简介
本书是一本为程序设计初学者轻松地学习C++编程语言而编写的图书。本书从初学者认知的角度出发,由浅入深、循序渐进地讲解了C++编程语言中的各种编程技术,通过通俗易懂的讲解和丰富生动的典型示例,使读者能够轻松地学到C++编程知识。
全书共分为3篇,第1篇主要介绍C++中的常用数据类型、基本语句、函数调用和指针等内容。第2篇主要介绍C++面向对象的程序设计,包括类和对象、继承和派生、多态性和虚函数等内容。第3篇主要介绍数据结构中链表的C++实现和C++中模板的应用。本书附有配套光盘,光盘中提供了本书中所有示例和实例的源代码,为读者在使用本书时提供方便。
本书适用于自学C++编程技术的初学者,也可作为各高校和各种培训机构的培训教材。
目录
目录
第1篇 初识C++
第1章 面向对象的设计
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.2.3 面向对象设计方法的优点
1.3 面向对象的核心思想——抽象
1.3.1 核心思想——抽象
1.3.2 抽象的方法
1.4 面向对象的分析与设计
1.4.1 面向对象的分析方法
1.4.2 面向对象的设计
1.4.3 “小试牛刀”的结论
1.5 小结
1.6 小测试
第2章 认识C++开发利器——Visual C++
2.1 C++的开发利器——Visual C++
2.2 Visual C++的集成开发环境
2.2.1 启动Visual C++
2.2.2 简单的主窗口
2.3 一目了然的菜单栏
2.3.1 File(文件)菜单
2.3.2 Edit(编辑)菜单
2.3.3 View(视图)菜单
2.3.4 Insert(插入)菜单
2.3.5 Proigect(项目)菜单
2.3.6 Build(生成)菜单
2.3.7 Tools(工具)菜单
2.3.8 Window(窗口)菜单
2.3.9 Help(帮助)菜单
2.3.10 Debug(调试)菜单
2.4 快捷方便的工具栏
2.4.1 Standard工具栏
2.4.2 Build工具栏
2.4.3 Debug工具栏
2.5 小结
2.6 小测试
第3章 开始C++之旅
3.1 神奇的“向导”——创建控制台程序
3.2 Hello World示例
3.3 解释这个C++程序
3.4 创建自己的Hello World
3.5 小结
3.6 小测试
第4章 C++基本功
4.1 数据与程序的区别
4.1.1 烹饪的菜谱——程序
4.1.2 烹饪的菜品——数据
4.2 标识符与关键字
4.2.1 什么是标识符
4.2.2 需要注意的关键字
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.5.1 整数型
4.5.2 实数型
4.5.3 字符型与字符串
4.5.4 布尔型
4.6 程序中的不会变的“口袋”——常量
4.6.1 创造不会变的口袋——定义常量
4.6.2 各种进制的常量
4.7 给变量起个“绰号”——引用
4.8 综合应用——用程序来计算圆的面积
4.9 小结
4.10 小测试
第5章 C++的基本招式
5.1 C++中的运算符与表达式
5.1.1 运算符与表达式
5.1.2 算术运算符
5.1.3 赋值运算符
5.1.4 “加加”和“减减”
5.1.5 复合运算符
5.1.6 位运算符
5.1.7 关系运算符
5.1.8 不像运算符的运算符
5.2 运算符的优先级和结合性
5.3 各种“口袋”之间的转换
5.3.1 隐式转换
5.3.2 显式转换
5.4 小结
5.5 小测试
第6章 让C++程序听话——控制语句
6.1 构成C++程序的基本——语句
6.1.1 表达式语句与空语句
6.1.2 复合语句
6.2 让程序选择自己的路——条件选择语句
6.2.1 如果与否则
6.2.2 逻辑运算符的使用——&&和‖
6.2.3 爱判断的问号
6.3 不怕重复的工作者——循环语句
6.3.1 当型循环while
6.3.2 当型循环的兄弟do-while
6.3.3 循环语句for
6.3.4 省略表达式1的for语句
6.3.5 省略表达式2的for语句
6.3.6 省略表达式3的for语句
6.3.7 省略表达式1和3的for语句
6.3.8 3个表达式全部省略的for语句
6.3.9 与循环变量无关的for语句
6.4 多样的选择——switch
6.4.1 用switch对学生成绩进行分类
6.4.2 多个执行结果共用1个条件
6.5 循环的嵌套
6.5.1 while语句的自身嵌套
6.5.2 for语句的自身嵌套
6.5.3 do-while语句的自身嵌套
6.5.4 for语句循环内嵌套while循环
6.5.5 while语句循环内嵌套多重for循环
6.5.6 do-while语句内嵌套其他类型的多重循环
6.6 退出与跳过
6.6.1 退出—break
6.6.2 跳过—continue
6.7 控制语句综合示例
6.7.1 四则运算深入学习while和switch
6.7.2 判断用户输入的数是否是素数——深入学习循环和条件判断
6.8 小结
6.9 小测试
第7章 C++程序中的“经理”——函数
7.1 明白什么是“经理”——函数的概念
7.1.1 什么是函数
7.1.2 使用函数的好处
7.1.3 程序中的“总经理”——Main函数
7.2 如何培养自己的“经理”
7.2.1 函数的定义
7.2.2 C++中函数的声明
7.3 给你的“经理”更多的资源——函数的参数
7.3.1 形式参数与实际参数
7.3.2 函数的计算的结果——函数的返回值
7.3.3 函数参数的求值顺序
7.3.4 可以包含默认的初始化参数
7.3.5 参数的修饰符
7.4 使用程序中的“经理”——函数的调用
7.4.1 函数调用表达式
7.4.2 函数调用的方式
7.4.3 函数的传值调用
7.4.4 函数的引用调用
7.5 如何让一个“经理”有更多的能力——函数的重载
7.5.1 参数类型上不同的重载函数
7.5.2 参数个数上不同的重载函数
7.6 “经理”间的协助——函数的嵌套调用
7.7 特殊的“经理”——内联和递归函数
7.7.1 内联函数
7.7.2 递归函数
7.8 “挖墙角”——使用C++的系统函数
7.8.1 系统函数的使用
7.8.2 字符串处理函数
7.9 小结
7.10 小测试
第8章 决定生存的权力——存储分类符
8.1 存储分类符和作用域
8.1.1 存储分类符的意义
8.1.2 什么是作用域
8.2 各种各样分类符的作用域及其生存期
8.2.1 自动变量
8.2.2 寄存器变量
8.2.3 静态变量
8.2.4 外部变量
8.3 内部函数和外部函数
8.3.1 内部函数
8.3.2 外部函数
8.4 小结
8.5 小测试
第9章 C++中的“大口袋”——数组
9.1 编了号的“大口袋”
9.1.1 内存中的大口袋——数组的概念
9.1.2 如何创造一个“大口袋”——数组的声明和定义
9.2 搞明白数组在内存中如何存储
9.3 “大口袋”的特性
9.3.1 在声明时初始化数组
9.3.2 数组元素的访问
9.3.3 数组可以传递给函数
9.4 二维数组
9.4.1 二维数组的声明和初始化
9.4.2 省略第一维的大小
9.4.3 二维数组在内存中的存储方式
9.4.4 二维数组元素的访问
9.4.5 二维数组转换为一维数组
9.5 只装“字符”的数组
9.5.1 创造字符数组及其初始化
9.5.2 字符数组元素的访问
9.5.3 特殊的字符串结束符
9.6 小结
9.7 小测试
第10章 让人迷惑的指针
10.1 变量的“向导”——指针
10.2 指针变量的声明和使用
10.2.1 指针变量的类型
10.2.2 指针变量的声明
10.2.3 获得地址并对指针变量进行初始化
10.2.4 特殊的值——NULL
10.2.5 指针的使用
10.2.6 指向指针变量的指针
10.3 指针变量的操作
10.3.1 指针变量的加减运算
10.3.2 指针变量的关系运算
10.4 数组、字符串和指针
10.4.1 数组和指针
10.4.2 一维数组中元素的指针表示法
10.4.3 二维数组的指针表示法
10.4.4 字符串和指针
10.5 常量指针与指针常量
10.5.1 常量指针
10.5.2 指针常量
10.6 指针与函数
10.6.1 指针作为参数
10.6.2 指针作为返回值
10.7 C++中灵活的空间——堆内存
10.7.1 如何获得堆内存并使用
10.7.2 如何释放堆内存
10.8 小结
10.9 小测试
第11章 自己设计的数据类型——结构
11.1 自定义的数据类型——结构的概念
11.2 如何制作自定义数据类型——结构类型的声明
11.3 结构类型变量的定义
11.3.1 结构类型变量的定义
11.3.2 typedef的使用
11.4 对结构变量的赋值
11.5 结构成员的访问
11.6 特殊的自定义类型——枚举类型
11.6.1 有限的可能性——枚举
11.6.2 枚举变量的声明和赋值
11.7 结构类型的数组和指针
11.7.1 结构数组
11.7.2 结构指针
11.8 结构与函数
11.8.1 结构作为参数
11.8.2 结构作为返回值
11.9 结构中的结构
11.9.1 指针变量作为结构成员
11.9.2 结构变量作为结构成员
11.10 小结
11.11 小测试
第12章 C++的预处理程序指令
12.1 C++的预处理功能
12.2 INCLUDE命令
12.3 简单的字符串替换
12.3.1 宏定义
12.3.2 取消宏定义
12.4 定义宏函数
12.5 条件编译
12.5.1 ifdef-else-endif格式
12.5.2 ifndef-else-endif格式
12.5.3 if-else-endif格式
12.6 头文件的编写
12.7 小结
12.8 小测试
第2篇 C++的新特性
第13章 类
13.1 面向对象设计中的类机制
13.2 从结构到类的转变
13.2.1 成为过去的结构
13.2.2 面向对象的类
13.3 类的实例——对象
13.3.1 类与对象关系
13.3.2 对象的声明
13.3.3 对象成员的访问
13.4 类的数据成员
13.5 类的成员函数
13.5.1 成员函数的声明
13.5.2 成员函数的实现
13.5.3 成员函数的重载
13.5.4 给成员函数的参数设置默认值
13.6 类对成员的访问控制
13.6.1 成员控制的优点
13.6.2 各种控制关键字
13.6.3 public关键字
13.6.4 private关键字
13.7 小结
13.8 小测试
第14章 类中特殊的函数与常类型
14.1 对象的创造者——构造函数
14.1.1 默认的构造函数
14.1.2 带参数的构造函数
14.1.3 带默认参数的构造函数
14.1.4 对象“克隆”——拷贝构造函数
14.2 对象的毁灭者——析构函数
14.3 类中的常类型
14.3.1 常对象
14.3.2 常成员函数
14.3.3 常数据成员
14.4 小结
14.5 小测试
第15章 类与对象的各种指针和引用
15.1 对象与函数
15.1.1 对象指针作为函数的参数
15.2.2 对象引用作为函数的参数
15.3 一串连续的对象——对象数组
15.4 子对象与堆对象
15.4.1 子对象
15.4.2 堆对象
15.4.3 学习删除堆对象并综合练习堆对象的创建、删除
15.5 小结
15.6 小测试
第16章 共有结点、友元与操作符
16.1 类中的共有结点
16.1.1 静态数据成员
16.1.2 静态成员函数
16.2 This指针
16.3 友元函数与友元类
16.3.1 友元函数
16.3.2 友元类
16.4 多功能的操作符
16.5 文件输入输出对象的使用
16.5.1 文件的打开与关闭
16.5.2 写入数据到文件
16.5.3 读取文件数据
16.6 小结
16.7 小测试
第17章 父子关系——继承
17.1 父与子——继承
17.1.1 子承父业——继承的概念
17.1.2 继承的意义
17.2 单继承的实现
17.2.1 子类的声明
17.2.2 子类的继承方式和存取权限
17.3 子类的构造与析构函数及类型适应
17.3.1 子类的构造函数
17.3.2 子类的析构函数
17.3.3 子类的类型适应
17.4 多继承
17.4.1 海纳百川——多继承的概念
17.4.2 多继承的构造函数
17.4.3 多继承的问题
17.5 虚基类
17.5.1 虚基类的声明
17.5.2 虚基类的构造函数
17.6 小结
17.7 小测试
第18章 虚函数与多态
18.1 多态的概念与实现
18.1.1 多态的概念
18.1.2 多态的C++实现
18.2 多态性中的“静”与“动”
18.2.1 静态联编
18.2.2 动态联编
18.3 什么是虚函数
18.3.1 虚函数
18.3.2 虚析构函数
18.4 抽象类与纯虚函数
18.4.1 虚函数中的特例——纯虚函数
18.4.2 抽象类
18.5 小结
18.6 小测试
第3篇 程序实例指导
第19章 C++的单链表
19.1 链表的概念与创建
19.1.1 链表的概念
19.1.2 链表的创建
19.2 结点的操作
19.2.1 结点的增加
19.2.2 结点的删除
19.3 链表的操作
19.3.1 链表结点的遍历
19.3.2 链表结点的查找
19.3.3 链表的清除
19.4 单链表的应用
19.5 小结
第20章 C++向量容器的使用
20.1 向量容器的概念及创建
20.1.1 向量容器的概念
20.1.2 向量容器的创建
20.2 对向量容器的操作
20.2.1 向量元素的增加
20.2.2 向量元素的访问
20.2.3 向量元素的删除
20.3 向量容器的应用
20.4 小结
第21章 Visual C++的程序调试
21.1 启动调试模式
21.2 使用监视窗口
21.3 使用变量查看窗口
21.4 单步执行
21.5 小结
附录 Visual C++菜单中文注释
第1篇 初识C++
第1章 面向对象的设计
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.2.3 面向对象设计方法的优点
1.3 面向对象的核心思想——抽象
1.3.1 核心思想——抽象
1.3.2 抽象的方法
1.4 面向对象的分析与设计
1.4.1 面向对象的分析方法
1.4.2 面向对象的设计
1.4.3 “小试牛刀”的结论
1.5 小结
1.6 小测试
第2章 认识C++开发利器——Visual C++
2.1 C++的开发利器——Visual C++
2.2 Visual C++的集成开发环境
2.2.1 启动Visual C++
2.2.2 简单的主窗口
2.3 一目了然的菜单栏
2.3.1 File(文件)菜单
2.3.2 Edit(编辑)菜单
2.3.3 View(视图)菜单
2.3.4 Insert(插入)菜单
2.3.5 Proigect(项目)菜单
2.3.6 Build(生成)菜单
2.3.7 Tools(工具)菜单
2.3.8 Window(窗口)菜单
2.3.9 Help(帮助)菜单
2.3.10 Debug(调试)菜单
2.4 快捷方便的工具栏
2.4.1 Standard工具栏
2.4.2 Build工具栏
2.4.3 Debug工具栏
2.5 小结
2.6 小测试
第3章 开始C++之旅
3.1 神奇的“向导”——创建控制台程序
3.2 Hello World示例
3.3 解释这个C++程序
3.4 创建自己的Hello World
3.5 小结
3.6 小测试
第4章 C++基本功
4.1 数据与程序的区别
4.1.1 烹饪的菜谱——程序
4.1.2 烹饪的菜品——数据
4.2 标识符与关键字
4.2.1 什么是标识符
4.2.2 需要注意的关键字
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.5.1 整数型
4.5.2 实数型
4.5.3 字符型与字符串
4.5.4 布尔型
4.6 程序中的不会变的“口袋”——常量
4.6.1 创造不会变的口袋——定义常量
4.6.2 各种进制的常量
4.7 给变量起个“绰号”——引用
4.8 综合应用——用程序来计算圆的面积
4.9 小结
4.10 小测试
第5章 C++的基本招式
5.1 C++中的运算符与表达式
5.1.1 运算符与表达式
5.1.2 算术运算符
5.1.3 赋值运算符
5.1.4 “加加”和“减减”
5.1.5 复合运算符
5.1.6 位运算符
5.1.7 关系运算符
5.1.8 不像运算符的运算符
5.2 运算符的优先级和结合性
5.3 各种“口袋”之间的转换
5.3.1 隐式转换
5.3.2 显式转换
5.4 小结
5.5 小测试
第6章 让C++程序听话——控制语句
6.1 构成C++程序的基本——语句
6.1.1 表达式语句与空语句
6.1.2 复合语句
6.2 让程序选择自己的路——条件选择语句
6.2.1 如果与否则
6.2.2 逻辑运算符的使用——&&和‖
6.2.3 爱判断的问号
6.3 不怕重复的工作者——循环语句
6.3.1 当型循环while
6.3.2 当型循环的兄弟do-while
6.3.3 循环语句for
6.3.4 省略表达式1的for语句
6.3.5 省略表达式2的for语句
6.3.6 省略表达式3的for语句
6.3.7 省略表达式1和3的for语句
6.3.8 3个表达式全部省略的for语句
6.3.9 与循环变量无关的for语句
6.4 多样的选择——switch
6.4.1 用switch对学生成绩进行分类
6.4.2 多个执行结果共用1个条件
6.5 循环的嵌套
6.5.1 while语句的自身嵌套
6.5.2 for语句的自身嵌套
6.5.3 do-while语句的自身嵌套
6.5.4 for语句循环内嵌套while循环
6.5.5 while语句循环内嵌套多重for循环
6.5.6 do-while语句内嵌套其他类型的多重循环
6.6 退出与跳过
6.6.1 退出—break
6.6.2 跳过—continue
6.7 控制语句综合示例
6.7.1 四则运算深入学习while和switch
6.7.2 判断用户输入的数是否是素数——深入学习循环和条件判断
6.8 小结
6.9 小测试
第7章 C++程序中的“经理”——函数
7.1 明白什么是“经理”——函数的概念
7.1.1 什么是函数
7.1.2 使用函数的好处
7.1.3 程序中的“总经理”——Main函数
7.2 如何培养自己的“经理”
7.2.1 函数的定义
7.2.2 C++中函数的声明
7.3 给你的“经理”更多的资源——函数的参数
7.3.1 形式参数与实际参数
7.3.2 函数的计算的结果——函数的返回值
7.3.3 函数参数的求值顺序
7.3.4 可以包含默认的初始化参数
7.3.5 参数的修饰符
7.4 使用程序中的“经理”——函数的调用
7.4.1 函数调用表达式
7.4.2 函数调用的方式
7.4.3 函数的传值调用
7.4.4 函数的引用调用
7.5 如何让一个“经理”有更多的能力——函数的重载
7.5.1 参数类型上不同的重载函数
7.5.2 参数个数上不同的重载函数
7.6 “经理”间的协助——函数的嵌套调用
7.7 特殊的“经理”——内联和递归函数
7.7.1 内联函数
7.7.2 递归函数
7.8 “挖墙角”——使用C++的系统函数
7.8.1 系统函数的使用
7.8.2 字符串处理函数
7.9 小结
7.10 小测试
第8章 决定生存的权力——存储分类符
8.1 存储分类符和作用域
8.1.1 存储分类符的意义
8.1.2 什么是作用域
8.2 各种各样分类符的作用域及其生存期
8.2.1 自动变量
8.2.2 寄存器变量
8.2.3 静态变量
8.2.4 外部变量
8.3 内部函数和外部函数
8.3.1 内部函数
8.3.2 外部函数
8.4 小结
8.5 小测试
第9章 C++中的“大口袋”——数组
9.1 编了号的“大口袋”
9.1.1 内存中的大口袋——数组的概念
9.1.2 如何创造一个“大口袋”——数组的声明和定义
9.2 搞明白数组在内存中如何存储
9.3 “大口袋”的特性
9.3.1 在声明时初始化数组
9.3.2 数组元素的访问
9.3.3 数组可以传递给函数
9.4 二维数组
9.4.1 二维数组的声明和初始化
9.4.2 省略第一维的大小
9.4.3 二维数组在内存中的存储方式
9.4.4 二维数组元素的访问
9.4.5 二维数组转换为一维数组
9.5 只装“字符”的数组
9.5.1 创造字符数组及其初始化
9.5.2 字符数组元素的访问
9.5.3 特殊的字符串结束符
9.6 小结
9.7 小测试
第10章 让人迷惑的指针
10.1 变量的“向导”——指针
10.2 指针变量的声明和使用
10.2.1 指针变量的类型
10.2.2 指针变量的声明
10.2.3 获得地址并对指针变量进行初始化
10.2.4 特殊的值——NULL
10.2.5 指针的使用
10.2.6 指向指针变量的指针
10.3 指针变量的操作
10.3.1 指针变量的加减运算
10.3.2 指针变量的关系运算
10.4 数组、字符串和指针
10.4.1 数组和指针
10.4.2 一维数组中元素的指针表示法
10.4.3 二维数组的指针表示法
10.4.4 字符串和指针
10.5 常量指针与指针常量
10.5.1 常量指针
10.5.2 指针常量
10.6 指针与函数
10.6.1 指针作为参数
10.6.2 指针作为返回值
10.7 C++中灵活的空间——堆内存
10.7.1 如何获得堆内存并使用
10.7.2 如何释放堆内存
10.8 小结
10.9 小测试
第11章 自己设计的数据类型——结构
11.1 自定义的数据类型——结构的概念
11.2 如何制作自定义数据类型——结构类型的声明
11.3 结构类型变量的定义
11.3.1 结构类型变量的定义
11.3.2 typedef的使用
11.4 对结构变量的赋值
11.5 结构成员的访问
11.6 特殊的自定义类型——枚举类型
11.6.1 有限的可能性——枚举
11.6.2 枚举变量的声明和赋值
11.7 结构类型的数组和指针
11.7.1 结构数组
11.7.2 结构指针
11.8 结构与函数
11.8.1 结构作为参数
11.8.2 结构作为返回值
11.9 结构中的结构
11.9.1 指针变量作为结构成员
11.9.2 结构变量作为结构成员
11.10 小结
11.11 小测试
第12章 C++的预处理程序指令
12.1 C++的预处理功能
12.2 INCLUDE命令
12.3 简单的字符串替换
12.3.1 宏定义
12.3.2 取消宏定义
12.4 定义宏函数
12.5 条件编译
12.5.1 ifdef-else-endif格式
12.5.2 ifndef-else-endif格式
12.5.3 if-else-endif格式
12.6 头文件的编写
12.7 小结
12.8 小测试
第2篇 C++的新特性
第13章 类
13.1 面向对象设计中的类机制
13.2 从结构到类的转变
13.2.1 成为过去的结构
13.2.2 面向对象的类
13.3 类的实例——对象
13.3.1 类与对象关系
13.3.2 对象的声明
13.3.3 对象成员的访问
13.4 类的数据成员
13.5 类的成员函数
13.5.1 成员函数的声明
13.5.2 成员函数的实现
13.5.3 成员函数的重载
13.5.4 给成员函数的参数设置默认值
13.6 类对成员的访问控制
13.6.1 成员控制的优点
13.6.2 各种控制关键字
13.6.3 public关键字
13.6.4 private关键字
13.7 小结
13.8 小测试
第14章 类中特殊的函数与常类型
14.1 对象的创造者——构造函数
14.1.1 默认的构造函数
14.1.2 带参数的构造函数
14.1.3 带默认参数的构造函数
14.1.4 对象“克隆”——拷贝构造函数
14.2 对象的毁灭者——析构函数
14.3 类中的常类型
14.3.1 常对象
14.3.2 常成员函数
14.3.3 常数据成员
14.4 小结
14.5 小测试
第15章 类与对象的各种指针和引用
15.1 对象与函数
15.1.1 对象指针作为函数的参数
15.2.2 对象引用作为函数的参数
15.3 一串连续的对象——对象数组
15.4 子对象与堆对象
15.4.1 子对象
15.4.2 堆对象
15.4.3 学习删除堆对象并综合练习堆对象的创建、删除
15.5 小结
15.6 小测试
第16章 共有结点、友元与操作符
16.1 类中的共有结点
16.1.1 静态数据成员
16.1.2 静态成员函数
16.2 This指针
16.3 友元函数与友元类
16.3.1 友元函数
16.3.2 友元类
16.4 多功能的操作符
16.5 文件输入输出对象的使用
16.5.1 文件的打开与关闭
16.5.2 写入数据到文件
16.5.3 读取文件数据
16.6 小结
16.7 小测试
第17章 父子关系——继承
17.1 父与子——继承
17.1.1 子承父业——继承的概念
17.1.2 继承的意义
17.2 单继承的实现
17.2.1 子类的声明
17.2.2 子类的继承方式和存取权限
17.3 子类的构造与析构函数及类型适应
17.3.1 子类的构造函数
17.3.2 子类的析构函数
17.3.3 子类的类型适应
17.4 多继承
17.4.1 海纳百川——多继承的概念
17.4.2 多继承的构造函数
17.4.3 多继承的问题
17.5 虚基类
17.5.1 虚基类的声明
17.5.2 虚基类的构造函数
17.6 小结
17.7 小测试
第18章 虚函数与多态
18.1 多态的概念与实现
18.1.1 多态的概念
18.1.2 多态的C++实现
18.2 多态性中的“静”与“动”
18.2.1 静态联编
18.2.2 动态联编
18.3 什么是虚函数
18.3.1 虚函数
18.3.2 虚析构函数
18.4 抽象类与纯虚函数
18.4.1 虚函数中的特例——纯虚函数
18.4.2 抽象类
18.5 小结
18.6 小测试
第3篇 程序实例指导
第19章 C++的单链表
19.1 链表的概念与创建
19.1.1 链表的概念
19.1.2 链表的创建
19.2 结点的操作
19.2.1 结点的增加
19.2.2 结点的删除
19.3 链表的操作
19.3.1 链表结点的遍历
19.3.2 链表结点的查找
19.3.3 链表的清除
19.4 单链表的应用
19.5 小结
第20章 C++向量容器的使用
20.1 向量容器的概念及创建
20.1.1 向量容器的概念
20.1.2 向量容器的创建
20.2 对向量容器的操作
20.2.1 向量元素的增加
20.2.2 向量元素的访问
20.2.3 向量元素的删除
20.3 向量容器的应用
20.4 小结
第21章 Visual C++的程序调试
21.1 启动调试模式
21.2 使用监视窗口
21.3 使用变量查看窗口
21.4 单步执行
21.5 小结
附录 Visual C++菜单中文注释
C++轻松入门
光盘服务联系方式: 020-38250260 客服QQ:4006604884
云图客服:
用户发送的提问,这种方式就需要有位在线客服来回答用户的问题,这种 就属于对话式的,问题是这种提问是否需要用户登录才能提问
Video Player
×
Audio Player
×
pdf Player
×
亲爱的云图用户,
光盘内的文件都可以直接点击浏览哦
无需下载,在线查阅资料!