《面向对象程序设计(C++语言)》是2014年清华大学出版社出版的图书。
本书是一本易学易用的面向对象程序设计(C++语言)大学教程,内容分成三大部分。
第一部分是C++语言基础,重点介绍了C++语言的语法、面向对象的基本特征、C++程序的开发过程、基本数据类型、函数、引用、动态内存管理及异常处理等。
第二部分是面向对象的程序设计,详细讲述面向对象程序设计的有关基本概念、类与对象的定义和使用、继承与派生、多态性、运算符重载、模板、标准模板库STL、C++的输入与输出等。第三部分是Visual C++环境下Windows程序开发概述,包括Windows 编程初步和综合设计实例——简单矢量绘图程序。
全书采用C++最新的标准,示例讲解精练,每章后面都附有各种类型的习题。
目录
- 第一部分C++语言基础
- 第1章面向对象程序设计概述
- 1.1面向过程与面向对象
- 1.1.1面向过程的程序设计
- 1.1.2面向对象的程序设计
- 1.2面向对象程序设计的基本特征
- 1.2.1新的程序设计范型
- 1.2.2面向对象程序设计的基本概念
- 1.2.3面向对象程序设计的基本特征
- 1.3面向对象程序设计的语言
- 1.4C++程序及其开发
- 1.4.1Visual C++6.0集成开发环境简介
- 1.4.2C++程序的开发过程
- 1.4.3Visual C++6.0控制台应用程序开发
- 1.5本章小结
- 习题
- 第2章C++语言基础
- 2.1C++语言概述
- 2.1.1从C语言到C++语言
- 2.1.2一个简单的C++程序
- 2.1.3名字空间
- 2.2基本数据类型、运算符和表达式
- 2.2.1基本数据类型
- 2.2.2运算符和表达式
- 2.2.3数据类型转换
- 2.3数据的输入与输出
- 2.3.1I/O的书写格式
- 2.3.2简单的I/O格式控制
- 2.4C++语言中函数的新特性
- 2.4.1函数的原型
- 2.4.2默认参数的函数
- 2.4.3内联函数
- 2.4.4函数重载
- 2.5引用
- 2.5.1引用的概念及使用
- 2.5.2引用作为参数传递
- 2.5.3引用与指针的区别
- 2.5.4引用作为返回类型
- 2.6动态内存分配
- 2.6.1动态内存分配与释放函数
- 2.6.2new和delete
- 2.7异常处理
- 2.7.1异常处理的机制
- 2.7.2异常处理的实现
- 2.8本章小结
- 习题
- 第二部分面向对象的程序设计
- 第3章类和对象(一)
- 3.1类的构成
- 3.1.1从结构到类
- 3.1.2类的构成
- 3.1.3类成员的访问属性
- 3.2类的成员函数
- 3.3对象的定义与使用
- 3.3.1类与对象的关系
- 3.3.2对象的定义
- 3.3.3对象中成员的访问
- 3.3.4对象赋值语句
- 3.4构造函数与析构函数
- 3.4.1构造函数
- 3.4.2成员初始化表
- 3.4.3具有默认参数的构造函数
- 3.4.4析构函数
- 3.4.5默认的构造函数和析构函数
- 3.4.6重载构造函数
- 3.4.7拷贝构造函数
- 3.4.8浅拷贝和深拷贝
- 3.5UML
- 3.5.1UML概述
- 3.5.2类图
- 3.6本章小结
- 习题
- 第4章类和对象(二)
- 4.1自引用指针this
- 4.2对象数组与对象指针
- 4.2.1对象数组
- 4.2.2堆对象
- 4.2.3对象指针
- 4.3向函数传递对象
- 4.3.1使用对象作为函数参数
- 4.3.2使用对象指针作为函数参数 [2]
- 4.3.3使用对象引用作为函数参数
- 4.4静态成员
- 4.4.1静态数据成员
- 4.4.2静态成员函数
- 4.5友元
- 4.5.1友元函数
- 4.5.2友元类
- 4.6对象成员
- 4.7常对象
- 4.8本章小结
- 习题
- 第5章继承与派生
- 5.1继承与派生的概念
- 5.2派生类的声明
- 5.3派生类的访问属性
- 5.4派生类的构造函数和析构函数
- 5.4.1派生类构造函数和析构函数的执行顺序
- 5.4.2派生类构造函数和析构函数的构造规则
- 5.5多继承
- 5.5.1多继承的声明
- 5.5.2多继承的构造函数与析构函数
- 5.6基类成员访问和赋值兼容性
- 5.6.1基类成员名的限定访问和名字覆盖
- 5.6.2名字覆盖
- 5.6.3赋值兼容规则
- 5.7虚基类
- 5.7.1提出问题
- 5.7.2虚基类的概念
- 5.7.3虚基类的初始化
- 5.8本章小结
- 习题
- 第6章虚函数与多态性
- 6.1多态性概述
- 6.1.1多态的类型
- 6.1.2基类指针指向派生类对象
- 6.2虚函数
- 6.2.1虚函数的定义格式
- 6.2.2多继承与虚函数
- 6.2.3虚析构函数
- 6.3纯虚函数和抽象类
- 6.3.1纯虚函数
- 6.3.2抽象类
- 6.4综合应用举例
- 6.5本章小结
- 习题
- 第7章运算符重载
- 7.1运算符重载的概念
- 7.2运算符重载的规则
- 7.3运算符重载为友元函数
- 7.4运算符重载为成员函数
- 7.5几种常用运算符的重载
- 7.6本章小结
- 习题
- 第8章模板
- 8.1模板的概念
- 8.2函数模板与模板函数
- 8.3类模板与模板类
- 8.4本章小结
- 习题
- 第9章标准模板库STL
- 9.1STL概述
- 9.2容器
- 9.2.1容器分类与共同操作
- 9.2.2顺序容器
- 9.2.3关联容器
- 9.3迭代器
- 9.3.1迭代器的分类
- 9.3.2容器类迭代器的基本操作
- 9.4算法与函数对象
- 9.4.1算法的使用形式
- 9.4.2常用算法举例
- 9.4.3函数对象
- 9.5本章小结
- 习题
- 第10章C++语言的输入和输出
- 10.1C++语言的流类库及其基本结构
- 10.2预定义类型的输入输出
- 10.2.1无格式输入输出
- 10.2.2格式化输入输出
- 10.3用户自定义类型的输入输出
- 10.4文件的输入输出
- 10.4.1通过FILE结构进行文件操作
- 10.4.2通过文件流进行文件操作
- 10.5本章小结
- 习题
- 第三部分Visual C++环境下Windows程序开发概述
- 第11章Windows 编程初步
- 11.1Windows编程机制
- 11.1.1Windows程序框架
- 11.1.2消息处理
- 11.1.3Windows常用数据类型和句柄
- 11.2MFC和应用程序框架
- 11.2.1MFC的常用类
- 11.2.2MFC的应用程序框架
- 11.2.3MFC的消息映射与处理
- 11.3对话框及常用控件
- 11.3.1对话框的构成和分类
- 11.3.2创建对话框程序
- 11.3.3添加对话框类
- 11.3.4运行对话框程序
- 11.3.5Windows常用控件
- 11.4文档和视图
- 11.4.1文档和视图的关系
- 11.4.2文档和视图类常用的成员函数
- 11.4.3文档和视图程序实例
- 11.5本章小结
- 习题
- 第12章综合设计实例——简单矢量绘图程序
- 12.1功能需求
- 12.2分析与设计
- 12.2.1图形元素的类逻辑设计
- 12.2.2图元的存储管理
- 12.2.3图元的绘制操作
- 12.3程序实现
- 12.3.1建立SDI应用程序框架
- 12.3.2建立菜单和工具栏
- 12.3.3添加图形元素类
- 12.3.4框架类的实现
- 12.3.5文档类的实现
- 12.3.6视图类的实现
- 12.3.7程序运行结果
- 12.4本章小结
- 习题
- 参考文献