C++是一种面向对象的程序设计语言,提供了类、模板、函数重载和运算符重载设计等功能,充分支持抽象、继承和多态等面向对象程序设计的特征,方便大型软件的开发。学习C++语言,就是要掌握面向对象的程序设计思想和解决实际问题的方法。
《C++面向对象程序设计》全面讲述了C抖的内容,从基本知识到核心概念,涉及了C++开发所需的必备知识。在编写过程中,面向对象的思想贯穿始终,并辅以大量有针对性的实例,可以让读者更好地理解各种概念和方法。在每章的后面还提供了丰富的上机实践和习题。
《C++面向对象程序设计》既可作为普通高等院校和高职高专院校计算机、软件等相关专业的教材,也可作为所有想全面学习C++开发技术的人员和使用C++进行开发的工程技术人员的工具书。
C++语言是当今IT领域最流行的程序设计语言之一,广泛应用于系统软件及各种大型应用软件的开发。目前,国内高校普遍开设了“面向对象程序设计”类的课程,一些院校更是将C++语言作为程序设计语言课程的首选。为此,我们在总结多年的教学、培训及开发实践经验的基础上编写了本书。
本书针对程序设计的初学者,以面向对象的程序设计思想为主线,以通俗易懂的方式介绍C++语言,引导读者以最自然的方式将人类惯有的面向对象的思维方法运用到程序设计中来。本书的宗旨是培养读者面向对象编程的基本能力,因此,在知识体系设计与章节安排上独具匠心,并通过先进的教学理念和深入浅出的讲解风格,循序渐进地展开教学内容。本书具有以下特点:
1.直接提出面向对象的设计思想,读者更容易接受与理解
由于C++语言既支持面向过程的程序设计方法,又支持面向对象的程序设计方法,所以传统的C++教材都是先从面向过程的设计思想开始讲授。这样做的缺点是,从面向过程转向面向对象时,读者接受起来会非常困难。本书直接讲授面向对象的程序设计思想,读者更容易接受和理解。
2.概念讲解形象、贴切、透彻,适合初学者学习
本书语言形象生动,在讲解各类概念时,多给予了形象、具体的解释,并且通过实例做了进一步阐述,使读者不仅能知其然,还能知其所以然,在第一次接触这些概念时就能迅速掌握。
3.实例丰富,加深读者的理解
本书在讲解知识点时,贯穿了大量有针对性的实例,使读者在实际的编程体验中能更好地理解各种概念和方法,加深其对C++语言内涵和精髓的理解程度。
本书共分为12章,全面介绍了C++面向对象程序设计的有关概念与语法,每个章节后还配备了上机实践与习题。书中所有实例程序均在Visual C++ 6.0上运行通过。
各章内容如下:
第1章 引入面向对象方法。主要介绍面向对象的程序设计方法与思想,并通过一个简单的C++示例使读者对Visual C++ 6.0运行环境有一定的了解。
第2章 类和对象的初步认识。主要介绍类和对象的概念以及定义方法;C++的变量与函数、运算符与表达式。
第3章 类和对象的提高篇。在第2章的基础上进一步讨论类和对象,包括构造函数、析构函数和静态成员等。
第4章 流程控制。重点介绍流程控制语句,包括顺序控制语句、选择控制语句和循环控制语句。利用这些流程控制语句,可以让程序的执行逻辑更合理,编码更简单。另外,还简单介绍了变量的作用域。
第5章 数组与指针。主要介绍一维数组的定义、初始化与引用;字符数组;指针的用法以及函数参数的传递方式等。
第6章 友元。友元机制是对封装机制的补充,它给了程序员更大的灵活性,可以提高程序的运行效率。本章主要介绍友元函数与友元类。
第7章 多态性。主要介绍静态多态性,包括函数重载与运算符重载。
第8章 继承性与派生类。继承是面向对象程序设计的重要特征,是使代码可以复用的最重要的方法之一。本章详细介绍C++继承和派生的方法。
第9章 动态多态性。多态性是面向对象程序设计的重要特征之一。本章重点介绍动态多态性,包括虚函数,抽象类等。
第10章 异常。主要介绍C++中异常的概念以及处理异常的方法。
第11章 模板。主要介绍模板的概念,包括函数模板与类模板。
第12章 文件的输入与输出。主要介绍文件、文件流的概念,以及如何从文件中输入数据并将处理的结果输出到文件等。
本书由李丽平、丁宏伟主编,石彦芳、刘丽华任副主编,赵清晨参编。其中,第6、7、9、11章由李丽平编写,第1、2、8章由丁宏伟编写,第4、5章由石彦芳编写,第3、10章由刘丽华编写,第12章由赵清晨编写。全书的整理、审校工作由李丽平、丁宏伟负责。
由于作者水平有限,书中难免有不足之处,恳请读者批评指正。
编 者
2011年8月
第1章 引入面向对象方法
1.1 程序设计基础
1.1.1 计算机语言的种类
1.1.2 面向对象程序设计
1.2 C++语言的产生和特点
1.2.1 c++语言的产生
1.2.2 c++语言的特点
1.3 C++程序中的类和对象
1.3.1 c++程序中的类
1.3.2 c++程序中的对象
1.3.3 C++程序的书写格式
1.4 编写和执行C++程序
1.4.1 C++程序的开发环境
1.4.2 C++程序的编译、链接和运行
1.5 小结
1.6 上机实践
习题
第2章 类和对象的初步认识
2.1 类
2.1.1 类的定义
2.1.2 数据类型与类的数据成员
2.1.3 类的成员函数
2.2 访问权限
2.2.1 私有成员访问控制
2.2.2 保护成员访问控制
2.2.3 公有成员访问控制
2.3 对象
2.3.1 对象的定义
2.3.2 对象成员的访问方法
2.3.3 对象的存储空间
2.4 运算符和表达式
2.4.1 算术运算符和算术表达式
2.4.2 赋值运算符
2.4.3 自增、自减运算符
2.4.4 关系运算符和关系表达式
2.4.5 逻辑运算符和逻辑表达式
2.4.6 条件运算符
2.4.7 sizeof运算符
2.4.8 逗号运算符
2.5 小结
2.6 上机实践
习题
第3章 类和对象的提高篇
3.1 构造函数
3.1.1 什么是构造函数
3.1.2 构造函数的声明与调用
3.1.3 带参数的构造函数
3.2 析构函数
3.2.1 什么是析构函数
3.2.2 析构函数的声明和默认析构.
3.3 对象的生命周期
3.4 静态成员
3.4.1 静态数据成员
3.4.2 静态成员函数
3.5 const关键字
3.5.1 常对象
3.5.2 常对象成员
3.6 小结
3.7 上机实践
习题
第4章 流程控制
4.1 顺序结构
4.1.1 输入
4.1.2 输出
……
附录Ⅱ ASCII码表