前言
前言
面向对象程序设计(C++)是高等学校理工科专业课之一,是一门实践性很强的课程。本书适合作为高等院校“面向对象程序设计(C++)”课程的教材,还可以作为广大读者学习面向对象程序设计(C++)的自学参考书。
本书有5个特色: ①每章围绕面向对象的一两个语法主题,提供简单易懂的代码实例讲解以及相应的课堂练习,来帮助学生理解和掌握本章内容; ②侧重面向对象程序设计的编程训练,课后习题的代码总量超过3300行; ③为明确应训练的语法,所有编程题都提供了相应的输入输出测试用例,部分编程题目预设前置或后置代码; ④为帮助初学者检测学习效果,提供了4套模拟试卷; ⑤提供了对于初学者来说具有很高参考价值的常见问题集锦,该内容来自作者多年教学过程中所整理的答疑记录,出版时作了精选和修订。
读者阅读本书之前需要具备基本的C语言程序设计能力,初步了解变量与数据类型、选择与循环、函数等基本语法。相比C语言的语法,C++面向对象的语法较晦涩难懂,初学者不容易掌握。为解决此问题,本书通过实例讲解和大量编程训练,帮助学生在实践经验积累的基础上领悟面向对象语言的三大特征: 封装性、继承性和多态性。
本书共12章,涉及类和对象、友元和静态、继承和组合、重载与多态性、异常处理等内容。第1章介绍C++标准输入输出用法;第2章回顾结构体,介绍从结构体如何封装到类以及类图设计;第3章介绍对象初始化中各种构造函数的用法;第4章介绍字符串类、复制构造函数及析构函数;第5章介绍封装中基于项目的多文件管理以及文件与流操作;第6章介绍静态、友元等共享机制及保护;第7章介绍运算符重载;第8章介绍单继承和组合用法、继承中的同名覆盖规则;第9章介绍同名覆盖和赋值兼容以及继承中的基于项目的多文件管理;第10章介绍多继承及虚基类;第11章介绍虚函数的动态联编以及抽象类和纯虚函数等用法;第12章介绍C++的异常处理机制。使用本书完成教学大约需要68学时,其中包括34学时上机。
本书作者多年为计算机及相关专业学生讲授“面向对象程序设计(C++)”课程,积累了丰富的教学资源和实践经验。本书配有相应的教学辅助课件以及程序实例,使之更符合面向对象程序设计课程的要求,有需要者可与出版社联系。
本书的所有示例程序均在DevCpp 5.11上调试通过。
标有的课后习题有一定难度,供学有余力的同学选做。
在本书策划和写作过程中,孙践知、孙悦红、张迎新、陈红倩、姚春莲等提出了很多宝贵意见,同时本书也参考了许多国内外的面向对象程序设计书籍,作者在此一并表示衷心感谢。
限于作者水平,书中难免有疏漏和不妥之处,恳请读者批评指正!
作者
2018年1月