C++面向对象程序设计
2011-10
机械工业出版社
刁奕,刁成嘉 等 著
333
《C++面向对象程序设计》系统、详细地讲述了C++面向对象程序设计语言的基本语法格式和功能,通过大量的程序实例介绍如何利用C++语言编写一个高效率、高质量的面向对象的程序,以及一些编程技巧。还介绍了C++中的异常处理机制、强大的字符串处理功能、STL(标准模板库)提供的各种功能及其提供的通用算法和容器,以及通用设计模式和微软基础类库(MFC)等高级C++编程技术。 《C++面向对象程序设计》可以作为高等院校计算机和信息技术专业相关课程的教材,也可作为广大软件开发人员学习面向对象C++编程技术的自学指导书和技术参考书。
出版说明前言第1章 C++面向对象程序设计基础1.1 类的定义和对象的创建1.1.1 类设计的基本概念1.1.2 类的定义格式1.1.3 类的成员函数1.1.4 类成员的访问控制1.1.5 对象的声明与使用1.2 构造函数和析构函数1.2.1 构造函数与复制构造函数1.2.2 析构函数1.3 友元函数和友元类1.3.1 友元函数1.3.2 友元类1.4 静态成员1.4.1 静态数据成员1.4.2 静态成员函数1.5 类和对象的进一步应用1.5.1 类对象作为成员1.5.2 常对象1.5.3 对象作函数参数1.5.4 对象数组1.6 继承与派生1.6.1 继承的语法1.6.2 继承中的访问控制1.6.3 继承中对象的初始化与清除1.6.4 多重继承1.6.5 多重继承的二义性1.6.6 虚基类1.7 运算符重载1.7.1 运算符重载的语法和规则1.7.2 一元运算符重载1.7.3 二元运算符重载1.7.4 几个特殊运算符的重载1.7.5 运算符重载与类型转换1.8 虚函数与动态联编1.8.1 虚函数1.8.2 虚函数的实现1.8.3 纯虚函数与抽象类1.9 本章小结1.10 习题第2章 C++异常处理机制2.1 基本概念2.2 C++中的异常处理机制2.2.1 异常处理的语法格式2.2.2 int型异常信息值的抛掷与捕获2.2.3 C++异常处理机制的执行过程2.2.4 异常事件定义与异常接口声明2.3 异常处理的规则2.4 处理异常事件类2.5 本章小结2.6 习题第3章 C++字符串处理功能3.1 C格式的字符串和标准string类型的区别3.2 字符串构造函数与字符串变量的初始化3.3 字符串的操作3.3.1 字符串的追加、插入和连接3.3.2 string类中的重载运算符3.3.3 字符串中的替换操作3.4 字符串的查找3.4.1 字符串查找的成员函数3.4.2 查找一组字符第一次和最后一次出现的位置3.4.3 逆向查找操作3.5 字符串的删除与比较3.5.1 从字符串中删除字符3.5.2 字符串的比较3.6 字符串的转换与复制3.6.1 字符串输入与输出3.6.2 字符串大小写的转换3.6.3 确定字符串中含有的字符数量3.6.4 字符串的长度与复制操作3.6.5 字符串的交换与取子字符串3.6.6 字符串操作的其他成员函数3.7 字符串的应用3.8 本章小结3.9 习题第4章 基于模板的C++编程4.1 概述4.2 函数模板4.2.1 函数模板重载4.2.2 一个使用STL容器的例子4.3 类模板4.3.1 成员模板4.3.2 类模板的特化4.4 模板的形式参数和实参4.4.1 函数模板实参4.4.2 非类型实参4.4.3 类型实参4.4.4 模板型模板实参4.5 模板的实参演绎4.6 模板中的名称查找4.6.1 模板中的名称4.6.2 受限的名称查找4.6.3 非受限的名称查找4.6.4 依赖参数的名称查找4.7 模板实例化4.7.1 自动实例化(隐式实例化)4.7.2 延迟实例化4.8 模板元编程4.9 本章小结4.10 习题第5章 标准模板库通用算法5.1 概述5.2 函数对象5.2.1 预定义函数对象5.2.2 算术函数对象5.2.3 关系函数对象5.2.4 逻辑函数对象5.2.5 函数对象的函数适配器5.2.6 自定义函数对象5.3 迭代器(iterator)5.3.1 插入迭代器5.3.2 反向迭代器5.3.3 输入/输出流迭代器5.3.4 输入流迭代器(istream_iterator)5.3.5 输出流迭代器(ostream_iterator)5.3.6 标准库定义的5种迭代器5.4 几类通用算法5.4.1 查找算法5.4.2 排序和通用整序算法5.4.3 删除和替换算法5.4.4 排列组合算法5.4.5 算术运算算法5.4.6 生成和异变算法5.4.7 关系算法5.4.8 集合算法5.4.9 堆算法5.5 通用算法与容器成员函数5.5.1 通用算法与容器5.5.2 通用容器的成员函数5.6 本章小结5.7 习题第6章 标准模板库通用容器6.1 概述6.2 顺序容器6.2.1 定义一个顺序容器6.2.2 容器的指针--迭代器6.2.3 顺序容器的插入操作6.2.4 顺序容器中的删除操作6.2.5 顺序容器的赋值和对换6.2.6 容器与通用算法6.2.7 顺序容器的存储结构和访问效率6.2.8 自动动态扩展存储空间的vector6.3 关联容器6.3.1 关联容器集合(set)6.3.2 关联容器映射(map)6.3.3 多重映射和多重集合6.4 容器适配器6.4.1 栈容器6.4.2 队列和优先队列6.4.3 队列容器6.4.4 优先队列容器6.5 本章小结6.6 习题第7章 设计模式7.1 模式的概念7.2 单件模式7.3 工厂模式7.3.1 简单工厂模式7.3.2 工厂方法模式7.3.3 抽象工厂模式7.4 适配器模式7.5 观察者模式7.5.1 观察者模式的实现7.5.2 观察者模式的应用7.6 本章小结7.7 习题第8章 Windows C++编程基础8.1 Windows编程基础知识8.1.1 窗口8.1.2 句柄8.1.3 消息8.1.4 事件驱动8.1.5 MFC简介8.2 MFC应用程序基本架构8.2.1 用MFC"应用程序向导"自动生成框架程序8.2.2 MFC程序的类结构8.2.3 MFC程序的文件组成8.2.4 应用程序类及其主要成员函数InitInstance()8.2.5 文档类、视图类及文档/视图设计模式8.2.6 框架窗口类8.2.7 子窗口类8.2.8 MFC的消息处理机制8.3 菜单、快捷键、工具栏和状态栏8.3.1 菜单8.3.2 建立菜单的程序实例8.3.3 快捷键8.3.4 工具栏8.3.5 状态栏8.4 图形界面编辑8.4.1 图形设备接口8.4.2 伪设备8.4.3 设备语义8.4.4 CDC类8.4.5 触发WM_PAINT绘图消息8.4.6 采用CDC类绘图的实例8.4.7 字体类和文本输出实例8.5 文件操作8.5.1 文件与CFile类8.5.2 文件操作方法8.5.3 序列化8.6 对话框8.6.1 特殊的窗口-对话框8.6.2 对话框的运行机制8.6.3 控件8.6.4 创建基于对话框的MFC应用程序8.6.5 对话框数据交换和数据验证(DDX/DDV)8.6.6 基本消息对话框8.6.7 通用对话框8.7 本章小结8.8 习题参考文献