目录 1
第1章 编程逻辑和技术 1
开始 2
引入框图 2
I-P-O周期 2
使用框图表示程序流程 3
变量、常量和内存 4
循环迭代和条件判定 6
预检和预检表 6
循环迭代 6
条件判定 8
理解编程的模块化方法 9
养成一个好的习惯 13
第2章 编辑和编译C++程序 19
开始 20
C和C++语言概述 20
计算机语言的发展阶段 20
C和C++语言的发展历史 21
C和C++语言的特点 22
编写“我的第一个C++程序” 22
编写C++程序 22
保存C++程序 23
C++程序的成分 23
使用名字空间std 30
程序的编译、链接和执行 32
Linux平台下的GNU编译器 33
Quincy 99集成开发环境编译器 33
MicrosoftVisual C++编译器 34
使用模块化编程方法 38
使用C结构化编程方法 39
使用C++面向对象编程方法 40
第3章 常量、变量和指针 43
数据类型概述 44
数据类型的分类 44
常量、变量和内存 45
基本数据类型 48
布尔型(bool) 48
字符型(char) 48
ASCⅡ字符集 49
整型(int) 51
数据大小与sizeof运算符 52
浮点型(float) 52
数据类型转换 53
指针变量 55
指针基础 55
读取指针变量iNum_Pointer地址 57
引用指针变量:&和* 57
类型修饰符 59
const类型修饰符 59
volatile类型修饰符 59
第4章 运算符、优先级和结合律 63
开始 64
基本概念 64
基本运算符 65
算术运算符 65
一元增量、减量运算符 67
算术赋值运算符 67
比较运算符 69
逻辑运算符 69
条件运算符 70
逗号运算符 71
优先级与结合律 72
第5章 函数、函数指针和指针函数 77
开始 78
定义函数和调用函数 78
变量的作用域 80
块作用域 82
函数作用域 82
全局作用域 82
形参和实参 83
带参数的函数 83
调用函数 85
声明函数原型 86
函数调用方式 87
直接调用 88
使用别名的引用调用 89
用指针的引用调用 92
new和delete运算符 95
变量的存储类型 97
静态存储和动态存储 97
函数指针 99
指针函数 101
第6章 面向对象的编程方法:类 103
声明类 104
C++中的类 104
作用域分解运算符(∷) 105
访问成员变量和成员函数 106
创建类对象 106
类对象访问符(.) 107
类指针访问符(->) 110
类的访问区分符 113
抽象和封装 113
使用访问区分符实现抽象和封装 114
静态变量和静态函数 117
静态变量 117
静态函数 119
类作用域 120
类作用域、友元函数和友元类 120
友元函数 121
友元类 122
第7章 成员函数、构造函数和析构函数 125
构造函数的必要性 126
声明构造函数 127
成员方式初始化 128
析构函数的需要 129
对象的作用域和生命周期 130
带参数的构造函数 132
初始化值来自键盘 132
初始化值来自实参 133
带参数默认值的构造函数 134
第8章 条件判定、循环和跳转 137
If...else结构 138
条件结构 138
Switch...case结构 144
循环结构 147
while循环 147
do...while循环 148
break和continue语句 149
for循环结构 152
跳转结构 157
goto语句的错误用法 157
goto语句错误的改正 158
第9章 数组、数组指针和指针数组 163
一维int数组 164
int数组和数组指针 167
字符串——一维char数组 168
字符串和数组指针 169
string字符串对象 170
构造字符串 170
给字符串对象赋值 170
字符串的连接 171
字符串的下标 171
字符串的子串 171
字符串的比较 171
指针数组和指针的指针 172
指针数组 172
指针的指针 173
二维数组 173
三维数组 177
第10章 静态多态:构造函数重载和运算符重载 179
静态多态性 180
函数重载 180
成员函数重载 180
构造函数重载 182
运算符重载 184
运算符重载的必要性 184
一元运算符重载 185
简单的前缀一元运算符 185
事前和事后的增量和减量运算符 188
重载二元运算符 190
简单运算符 191
加号运算符重载 191
大于(>)运算符重载 198
this指针 199
第11章 类的关系:类的包含和类的继承 203
识别类之间的关系 204
继承关系 204
组合关系 206
利用关系 206
实例化关系 206
类和继承性 207
继承性 207
调用构造函数和析构函数的顺序 209
基类初始化 210
派生的访问区分符 212
第12章 动态多态:滞后联编和函数重载 217
实现滞后联编 218
联编的概念 218
用虚函数实现滞后联编 219
静态多态性与动态多态性的比较 222
第13章 多重继承性、歧义性和虚基类 231
多重继承性 232
多重继承中访问区分符 233
多重继承中的歧义性 234
虚基类 237
调用构造函数和析构函数 238
第14章 文件的输出和输入 243
流类层次结构 244
流的插入和抽取 245
流的插入 245
流的抽取 246
输出和输入 249
使用内部数据类型的文件 249
文件输出和输入 249
使用对象的文件输出和输入 251
二进制输出和输入 253
文件的打开和关闭 257
open()函数 257
close()函数 257
打开方式位 260
文件指针 260
查询文件 262
修改文件的内容 262
第15章 类指针、单链表和双链表 265
链表 266
链表的类型 266
INFO在节点中的表示 268
单链表 268
链表的操作 268
链表的应用 268
Node类的表示 271
List类的表示 272
链表中插入节点 273
作为新链表的第一个节点 273
在表的开始处插入节点 274
在表的中间插入节点 274
在表的尾部插入节点 275
修改链表 277
遍历链表 278
查询信息 278
删除节点 279
链表排序 281
链表操作 282
第16章 用链表实现栈和队列 287
栈 288
栈操作 288
用链表实现栈 289
队列 292
队列类型 293
队列操作 294
用链表实现队列 294
附录 299
附录A ASCII字符集 300
附录B 运算符优先级 301
附录C C++的关键字 303