面向对象程序设计与Visual C++6.0教程(第2版)(21世纪高等学校规划教材·计算机科学
定 价:44.5 元
丛书名:21世纪高等学校规划教材·计算机科学与技术
- 作者:陈天华 编著
- 出版时间:2013/12/1
- ISBN:9787302339281
- 出 版 社:清华大学出版社
- 中图法分类:TP312
- 页码:395
- 纸张:胶版纸
- 版次:2
- 开本:16开
《面向对象程序设计与Visual C++6.0教程(第2版)/21世纪高等学校规划教材计算机科学与技术》将C++语言和应用VisualC++6.0设计Windows应用程序紧密结合在一起,全面系统地讲述了C++语言的基本概念、语法和面向对象程序设计的方法及应用,并对C++面向对象语言的抽象性、封装性、继承性与多态性进行了全面介绍,内容包括C++语法、函数、类与对象、数组与指针、继承与派生、多态性、模板、I/O流库及异常处理机制。在此基础上,还介绍了用VisualC++6.0开发Windows应用程序的基本原理与概念,以及各种典型的Windows应用程序的设计方法。《面向对象程序设计与Visual C++6.0教程(第2版)/21世纪高等学校规划教材计算机科学与技术》各章均配有丰富的例题和习题,在内容安排上循序渐进、深入浅出,力求突出重点、面向应用,提高读者解决问题的能力。
与《面向对象程序设计与Visual C++6.0教程(第2版)/21世纪高等学校规划教材计算机科学与技术》第1版配套出版的《面向对象程序设计与VisualC++6.0教程题解与实验指导》可继续使用。本书可作为高等院校计算机、电子技术、通信、信息工程、自动化、电气类及相关专业的面向对象程序设计课程的教材,也可作为IT业工程技术人员或其他相关人员的参考书。
深刻了解学习程序设计课程的难点和需求,内容安排科学合理、针对性强,容易理解和掌握。 对关键语句进行了注释,对类名、函数名等标识符的命名做到“见名知义”。 全部程序在Visual C++ 6.0环境下调试通过,绝大多数程序给出了要点分析,剖析了难点、要点和创新点。 在C++的基础上,介绍了MFC各种典型应用程序设计,学以致用。 与本书配套的《面向对象程序设计与Visual C++ 6.0教程题解与实验指导》已出版。
第2版前言
软件技术发展的一个主要表现就是程序设计方法的不断改进,从早期的结构化程序设计到现在的面向对象程序设计,程序设计方法一直处于发展之中。面向对象程序设计语言自身也在不断发展与变革,例如,从最早的Smalltalk到现在广泛使用的C++、Java和C#。作为C语言的继承者,C++目前仍然是应用最广泛的面向对象程序设计语言,而Visual C++则是使用人数最多的C++编程环境。
本书是作者在从事多年软件开发和讲授C++语言的基础上撰写而成的,吸收了面向对象程序设计的最新发展成果,自第1版出版以来已被很多高等院校选为教材,且取得了良好的教学效果。本书先后经过多次重印,得到了很多教师、大学生和读者的广泛认可,并被评为“北京市高等教育精品教材”。从服务教学、服务读者的角度考虑,本书在这次再版中,广泛听取了国内一线教师、同行和读者的意见和建议,保留了第1版的基本风格、基本框架和基本内容,并对面向对象技术的相关内容进行加强,新增和调整了少量例题和习题。
本书共12章,在内容安排上按照循序渐进的原则,依次介绍C++语言的基本概念、原理、程序设计要点及Visual C++的典型应用程序设计方法。在各章节内容的安排上,本书充分考虑了C++语言的逻辑进程、程序设计规律、读者的学习习惯和接受能力,使整个学习过程按照从简单到复杂的顺序进行。C++语言是为处理大规模程序的开发而推出的程序设计语言,是典型且得到广泛应用的面向对象的程序设计语言。如何学好C++语言是广大读者非常关心的问题,也是作者一直在思考的问题。作者认为,要学好C++语言,应注意以下两点:
一是深刻地理解C++面向对象的基本思想和概念(如类的封装性、继承性和多态性等),如不能真正地掌握和理解C++的基本思想和概念,程序设计将难以深入。
二是要在应用中学习,要结合具体应用进行学习。学习C++语言的目的是为了应用和解决实际问题,在掌握C++语言的基本理论之后,还需加强实践和练习,因此,建议读者一边学习,一边上机实践,只有这样,才能加快学习进度、提高学习效率。
为了实现这个目标,使读者能够尽快地应用C++解决实际问题,本书每一章均给出了大量具有代表性、应用性的例题和习题,所有例题和习题均在Visual C++环境下测试完成。这些例题对于读者掌握C++的语法、深刻理解其特点和程序设计的要领是非常有益的,希望读者通过完成这些习题,进一步熟悉和加深对面向对象程序设计要点的理解,并能举一反三、活学活用。
无论是国内还是国外,程序设计都是信息类专业大学生的一项基本技能,随着社会经济的发展和信息技术的深入应用,社会对软件人才需求的质量要求越来越高。君欲善其事,必先利其器,要想成为一名优秀的软件开发人员,需要在程序设计语言、算法、程序设计环境等方面训练有素。现行高校开设的“C++面向对象程序设计”符合这3个方面的需要,本书正是为满足这一要求而编写的。
在本书再版过程中,清华大学出版社给予了很大的帮助,在本书写作及再版过程中,中国高等教育学会教育信息化分会理事长、清华大学蒋东兴主任给予了大力支持和帮助,在此一并表示衷心的感谢。
由于计算机科学与技术一直处于快速发展之中,加之作者水平有限,书中缺点和疏漏之处在所难免,恳请读者不吝赐教。
作者
2013年9月
第1版前言
随着信息技术和计算机科学的发展,计算机技术已渗透到各学科的研究和应用之中,C++语言不再像诞生的初期,只被少数专业开发人员使用,而已经被各专业的工程技术人员广泛应用于国民经济的各行各业之中。
面向对象程序设计方法所强调的基本原则之一是直接面对客观世界中存在的问题进行软件开发,使软件开发方法更符合人类的思维习惯。由于面向对象编程语言所具有的许多优点,目前它已经成为开发大型软件的主流方法,而C++是面向对象的程序设计语言中应用最广泛的一种,成为了国内外高等院校程序设计的一门专业必修课程,同时也是编程人员最广泛使用的工具。学好C++,可以很容易地触类旁通Java、C#等其他语言。Visual C++是具有强大功能的可视化开发工具,它将面向对象、网络技术、事件驱动、数据库及应用程序向导完美地结合在一起,使用户可以快捷、可视化地开发应用程序,它已经成为基于Windows应用程序开发的主流平台。本书较好地实现了将C++面向对象编程语言与可视化工具的结合,力求使学生具有良好的程序设计素养和能力。
许多学生虽学过C++,却疏于编程,作者在教学中深刻地认识到了这一点。要学好程序设计,学生不仅需要掌握编程语言,也需要掌握基本的数据结构和程序设计方法,才能更好地分析问题和解决问题。面向对象程序设计方法是软件分析、设计和实现的一种新方法,本书以面向对象的程序设计方法贯穿始终,不仅详细介绍了C++语言本身,而且剖析了常用的数据结构和算法,着重从程序设计方法的角度介绍语法及应用,力求使读者既能熟练掌握C++程序设计语言,也能具有运用面向对象方法解决实际问题的能力。
本书共12章,从内容上可以分为三大部分。第一部分(第1章~第3章)是面向对象程序设计的基本概念和基本方法,介绍从C语言到C++语言的过渡及C++语法。第二部分(第4章~第10章)是C++语言实现面向对象程序设计的基本方法,通过对概念和原理的准确描述,并结合典型的例题,由浅入深地介绍C++的类与对象、数组与指针、继承与派生、多态性、模板、I/O流库、异常处理机制等概念,通过实例掌握面向对象程序设计的原理、思想和方法内核。第三部分(第11章~第12章)是Visual C++6.0平台下Windows应用程序的开发,在介绍Windows程序设计的基本理论与概念的基础上,详细介绍了包括输入输出处理(文本输入输出及绘图)、菜单、工具栏、状态栏、对话框、控件及数据库应用程序的设计方法,通过典型的实例和详细的步骤,掌握基于MFC的各种典型Windows应用程序设计的方法,为Windows程序的深入应用奠定坚实的基础。
本书作者一直从事和面向对象程序设计及相关的教学与科研工作,主讲过程序设计方面的多门课程,深刻了解学生在学习中的难点和对教材内容的需求。本书凝集了作者多年教学和科研实践经验,全书以面向对象的思维贯穿始终,选材新颖,注重内容的科学性、适应性和针对性,符合当今计算机科学的发展趋势。本书设计了许多与实际有关的例题和习题,并且它们彼此相关,环环相扣。 全部程序都在Visual C++6.0调试通过,并给出了程序运行结果。全部程序风格统一,对关键性语句进行了注释,对类名、函数名等标识符的命名做到“见名知义”,且绝大多数程序给出了设计要点分析。
本书内容深入浅出,将复杂的概念用简洁浅显的语言来讲述,使读者可轻松入门,循序渐进地提高,在有限的学时中,全面掌握基本理论和基础知识。在此基础上,再进一步通过实验熟练掌握开发环境的使用以及程序设计的技巧和方法。面向对象程序设计课程是一门既要求理论,又强调实践的课程。希望读者认真实践教材的每一道例题与习题。
为方便读者使用本书,《面向对象程序设计与Visual C++6.0教程题解与实验指导》将与本书配套出版,与此同时,还提供与教材配套的电子教案及教材的全部源程序。
本书可以作为高等院校计算机、电子技术、通信、信息工程、自动化、电气及相关专业的面向对象程序设计课程教材,也可作为IT业工程技术人员或其他相关人员的参考书。
使用本教材约需80学时,其中实验30学时左右,各学校可根据实际情况和内容安排学时。在本书的写作过程中得到了清华大学计算机与信息管理中心蒋东兴主任的大力支持和帮助,此外,周玉英、陈茜、丁灿飞、文静、陈鸣红、吴玑中、周海英、宋义召、樊星、谢娇颖、杨成、王蜀毅、林欣欣、王娟、许飞、倪国英等同志在文稿录入和校对方面承担了许多工作,在此表示衷心的感谢。
由于作者水平有限,缺点和疏漏之处在所难免,恳请读者批评指正。欢迎读者对本书提出任何意见和建议。
作者
2005年8月
第1章 面向对象程序设计概述
1.1 程序设计语言的发展
1.1.1 机器语言
1.1.2 汇编语言
1.1.3 高级语言
1.1.4 面向对象语言
1.2 面向对象程序设计的基本概念
1.2.1 面向对象方法的产生
1.2.2 面向对象与面向过程的区别
1.2.3 类与对象的概念
1.2.4 消息与事件的概念
1.3 面向对象程序设计的特点
1.3.1 抽象性
1.3.2 封装性
1.3.3 继承性 第1章 面向对象程序设计概述
1.1 程序设计语言的发展
1.1.1 机器语言
1.1.2 汇编语言
1.1.3 高级语言
1.1.4 面向对象语言
1.2 面向对象程序设计的基本概念
1.2.1 面向对象方法的产生
1.2.2 面向对象与面向过程的区别
1.2.3 类与对象的概念
1.2.4 消息与事件的概念
1.3 面向对象程序设计的特点
1.3.1 抽象性
1.3.2 封装性
1.3.3 继承性
1.3.4 多态性
1.3.5 C++的面向对象特性
1.4 面向对象程序设计语言
1.4.1 混合型面向对象语言C++
1.4.2 Java语言
1.5 面向对象软件开发
1.5.1 面向对象分析
1.5.2 面向对象设计
1.5.3 面向对象编程
1.5.4 面向对象测试
1.5.5 面向对象软件维护
1.6 本章小结
1.7 思考与练习题
第2章 C++程序设计基础
2.1 C++语言概述
2.1.1 C++的产生
2.1.2 C++的特点
2.1.3 C++字符集
2.1.4 C++程序的组成
2.2 C++基本数据类型
2.2.1 基本数据类型
2.2.2 常量
2.2.3 变量
2.2.4 符号常量
2.3 运算符与表达式
2.3.1 表达式
2.3.2 运算符及性质
2.3.3 运算符的优先级
2.3.4 混合运算时数据类型的转换
2.4 简单的输入与输出
2.4.1 I/O流简介
2.4.2 插入运算符和提取运算符
2.4.3 简单的I/O格式
2.5 程序的基本控制结构
2.5.1 顺序结构
2.5.2 选择结构
2.5.3 循环结构
2.6 自定义数据类型
2.6.1 结构体
2.6.2 联合体
2.6.3 枚举类型
2.6.4 typedef的应用
2.7 本章小结
2.8 思考与练习题
第3章 函数
3.1 函数的定义与使用
3.1.1 函数的定义
3.1.2 函数的调用
3.1.3 函数原型
3.2 函数的参数传递
3.2.1 传值调用
3.2.2 传地址调用
3.2.3 引用调用
3.3 函数的嵌套调用与递归调用
……
第4章 类与对象
第5章 数组与指针
第6章 继承与派生
第7章 多态性
第8章 模板
第9章 I/O流
第10章 异常处理
第11章 VisualC++应用简介
第12章 MFC典型应用程序设计
附录A VisualC++程序的调试方法
附录B ASCII码字符集
参考文献
随着信息技术和计算机科学的发展,计算机技术已渗透到各学科的研究和应用之中’C++语言不再像诞生的初期,只被少数专业开发人员使用,而已经被各专业的工程技术人员广泛应用于国民经济的各行各业之中。
面向对象程序设计方法所强调的基本原则之一是直接面对客观世界中存在的问题进行软件开发,使软件开发方法更符合人类的思维习惯。由于面向对象编程语言所具有的许多优点,目前它已经成为开发大型软件的主流方法,而C++是面向对象的程序设计语言中应用最广泛的一种,成为了国内外高等院校程序设计的一门专业必修课程,同时也是编程人员最广泛使用的工具。学好C++,可以很容易地触类旁通Java、C#等其他语言。VisualC++是具有强大功能的可视化开发工具,它将面向对象、网络技术、事件驱动、数据库及应用程序向导完美地结合在一起,使用户可以快捷、可视化地开发应用程序,它已经成为基于Windows应用程序开发的主流平台。本书较好地实现了将C++面向对象编程语言与可视化工具的结合,力求使学生具有良好的程序设计素养和能力。
许多学生虽学过C++,却疏于编程,作者在教学中深刻地认识到了这一点。要学好程序设计,学生不仅需要掌握编程语言.也需要掌握基本的数据结构和程序设计方法,才能更好地分析问题和解决问题。面向对象程序设计方法是软件分析、设计和实现的一种新方法,本书以面向对象的程序设计方法贯穿始终,不仅详细介绍了C++语言本身,而且剖析了常用的数据结构和算法,着重从程序设计方法的角度介绍语法及应用,力求使读者既能熟练掌握C++程序设计语言,也能具有运用面向对象方法解决实际问题的能力。
本书共12章,从内容上可以分为三大部分。第一部分(第1章~第3章)是面向对象程序设计的基本概念和基本方法,介绍从c语言到C++语言的过渡及C++语法。第二部分(第4章~第10章)是C++语言实现面向对象程序设计的基本方法,通过对概念和原理的准确描述,并结合典型的例题,由浅入深地介绍C++的类与对象、数组与指针、继承与派生、多态性、模板、1/0流库、异常处理机制等概念,通过实例掌握面向对象程序设计的原理、思想和方法内核。第三部分(第11章~第12章)是VisualC++6.o平台下Windows应用程序的开发,在介绍Windows程序设计的基本理论与概念的基础上,详细介绍了包括输入输出处理(文本输入输出及绘图)、菜单、工具栏、状态栏、对话框,控件及数据库应用程序的设计方法,通过典型的实例和详细的步骤,掌握基于MFC的各种典型Windows应用程序设计的方法,为Windows程序的深入应用奠定坚实的基础。