第1章 C++基础入门 1
1.1 C++概述 2
1.1.1 程序设计概述 2
1.1.2 C++历史及特点 2
1.1.3 C和C++ 6
1.2 C++的开发环境 7
1.2.1 认识 C++ 开发环境 7
1.2.2 **个C++程序 10
1.3 C++代码编写规范 15
1.4 综合实例——编写程序“Hello World” 15
1.5 本章小结 18
1.6 疑难解答 18
1.7 实战练习 18
第2章 数据类型 19
2.1 基本数据类型 20
2.1.1 整型 20
2.1.2 浮点型 20
2.1.3 字符型 21
2.2 常量 21
2.2.1 输出常量 21
2.2.2 宏定义的符号常量 24
2.2.3 const常变量 26
2.3 变量 28
2.3.1 什么是变量 28
2.3.2 变量的定义 29
2.3.3 变量的赋值 30
2.3.4 变量的生存周期 33
2.4 数据类型转换 33
2.5 综合实例—计算贷款支付额 38
2.6 本章小结 40
2.7 疑难解答 40
2.8 实战练习 40
第3章 运算符和表达式 41
3.1 C++中的运算符和表达式 42
3.1.1 运算符 42
3.1.2 表达式 42
3.2 算术运算符和表达式 43
3.2.1 基本算术运算符 43
3.2.2 算术运算符和算术表达式 43
3.2.3 自加和自减运算符 44
3.3 逻辑运算符和表达式 46
3.3.1 逻辑运算符 47
3.3.2 逻辑表达式 47
3.4 关系运算符和表达式 48
3.4.1 关系运算符 48
3.4.2 关系表达式 48
3.5 条件运算符和表达式 50
3.6 赋值运算符和表达式 50
3.6.1 赋值运算符 50
3.6.2 赋值表达式 51
3.7 逗号运算符和表达式 52
3.8 运算符的优先级 53
3.9 综合实例—求三角形面积 54
3.10 本章小结 55
3.11 疑难解答 55
3.12 实战练习 56
第4章 程序控制结构和语句 57
4.1 程序流程概述 58
4.2 顺序结构 58
4.3 选择结构与语句 592
从零开始
C++程序设计基础教程(云课版)
4.3.1 选择结构 59
4.3.2 单分支选择结构—if语句 60
4.3.3 双分支选择结构—
if-else语句 62
4.3.4 多分支选择结构—
switch语句 63
4.4 循环结构与语句 66
4.4.1 循环结构 66
4.4.2 for语句 67
4.4.3 while语句 70
4.4.4 do-while语句 72
4.5 转向语句 73
4.5.1 goto语句 74
4.5.2 break语句 75
4.5.3 continue语句 77
4.6 常见错误 79
4.6.1 语法错误 79
4.6.2 逻辑错误 80
4.6.3 运行错误 81
4.7 综合实例—模拟具有加、减、
乘、除4种功能的简单计算器 81
4.8 本章小结 83
4.9 疑难解答 83
4.10 实战练习 84
第5章 数组 85
5.1 什么是数组 86
5.1.1 一维数组 86
5.1.2 一维数组的声明和定义 86
5.1.3 一维数组的初始化 87
5.1.4 一维数组元素的引用 88
5.2 二维数组 89
5.2.1 二维数组的定义 89
5.2.2 二维数组的初始化 90
5.2.3 存取二维数组元素 92
5.2.4 二维数组元素的引用 93
5.3 多维数组 94
5.4 一维数组元素排序 94
5.5 综合实例—输出斐波那契数列的前20项 96
5.6 本章小结 97
5.7 疑难解答 98
5.8 实战练习 98
第6章 函数 99
6.1 函数的作用和分类 100
6.1.1 函数的作用 100
6.1.2 函数的分类 103
6.2 函数的定义与声明 104
6.2.1 函数的定义 105
6.2.2 函数的声明 106
6.3 函数的参数和返回值 107
6.3.1 函数的参数 107
6.3.2 函数的返回值 108
6.4 函数的调用 108
6.4.1 函数调用方式 109
6.4.2 参数传递方式 111
6.4.3 函数的嵌套调用 115
6.4.4 递归调用 117
6.4.5 函数的重载 121
6.4.6 带默认值的函数 123
6.5 局部变量和全局变量 126
6.5.1 局部变量 126
6.5.2 全局变量 127
6.6 变量的存储类别 128
6.7 内部函数和外部函数 132
6.8 内联函数 133
6.9 编译预处理 135
6.10 综合实例—求*大公约数和*小公倍数 141
6.11 本章小结 143
6.12 疑难解答 143
6.13 实战练习 1443
第7章 指针 145
7.1 指针概述 146
7.1.1 计算机内存地址 146
7.1.2 定义指针和取出指针指向地址中的数据 146
7.1.3 初始化指针和指针赋值 147
7.1.4 指针的运算 150
7.2 指针和数组 151
7.2.1 指针和一维数值数组 151
7.2.2 指针和二维数组 153
7.2.3 指针和字符数组 156
7.2.4 字符指针变量和字符数组对比 158
7.2.5 指向指针的指针 158
7.2.6 指针数组和数组指针 159
7.3 指针和函数 160
7.3.1 函数指针 160
7.3.2 返回指针的函数 161
7.3.3 指针与传递数组的函数 163
7.4 const指针 166
7.5 void指针类型 169
7.6 综合实例—找出*长的字符串 169
7.7 本章小结 171
7.8 疑难解答 171
7.9 实战练习 172
第8章 输入/输出 173
8.1 标准输入/输出 174
8.1.1 输入操作符>> 174
8.1.2 输出操作符<< 175
8.2 标准格式输出流 177
8.2.1 常用的格式流 177
8.2.2 有参数的常用流 179
8.3 其他输入/输出函数 180
8.4 字符串操作 181
8.5 综合实例—猜数字游戏 183
8.6 本章小结 185
8.7 疑难解答 185
8.8 实战练习 185
第9章 类与对象 187
9.1 类与对象概述 188
9.1.1 类的声明与定义 189
9.1.2 对象的定义和使用 192
9.2 构造函数 193
9.3 析构函数 197
9.4 友元 201
9.4.1 友元成员 201
9.4.2 友元函数 203
9.4.3 友元类 205
9.5 综合实例—设计一个Bank类 207
9.6 本章小结 209
9.7 疑难解答 209
9.8 实战练习 210
第10章 命名空间 211
10.1 命名空间的定义 212
10.1.1 命名空间的概念 212
10.1.2 命名空间的定义 212
10.2 命名空间成员的使用 214
10.2.1 using声明 214
10.2.2 using指令 215
10.3 类和命名空间的关系 217
10.4 自定义命名空间 219
10.5 综合实例—将两个同名类放在不同的命名空间中 221
10.6 本章小结 224
10.7 疑难解答 224
10.8 实战练习 2244
第11章 继承与派生 225
11.1 继承概述 226
11.1.1 什么是继承 226
11.1.2 基类与派生类 226
11.2 单继承 228
11.3 多重继承 231
11.3.1 多重继承的引用 232
11.3.2 二义性 234
11.4 综合实例—继承语法应用 235
11.5 本章小结 238
11.6 疑难解答 238
11.7 实战练习 238
第12章 多态与重载 239
12.1 多态概述 240
12.2 虚函数 244
12.3 构造函数多态 246
12.4 抽象类 252
12.5 重载概述 254
12.5.1 运算符的重载 254
12.5.2 函数的重载 258
12.6 综合实例—利用抽象类文具类派生笔类 264
12.7 本章小结 267
12.8 疑难解答 267
12.9 实战练习 268
第13章 文件 269
13.1 什么是文件 270
13.1.1 文件的分类 270
13.1.2 C++如何使用文件 270
13.2 文件的打开和关闭 270
13.2.1 打开文件 270
13.2.2 关闭文件 273
13.3 文件的读写 273
13.3.1 文本文件的读写 273
13.3.2 二进制文件的读写 275
13.4 在文件中实现定位到每个数据 276
13.5 文件中的数据随机访问 277
13.6 本章小结 286
13.7 疑难解答 286
13.8 实战练习 286
第14章 模板 287
14.1 模板的概念 288
14.1.1 什么是模板 288
14.1.2 模板的作用 288
14.1.3 模板的语法 289
14.2 模板的编译模型 294
14.2.1 包含编译模式 294
14.2.2 分离编译模型 296
14.3 本章小结 297
14.4 疑难解答 297
14.5 实战练习 298
第15章 异常处理 299
15.1 异常的类型 300
15.1.1 常见异常 300
15.1.2 异常的分类 301
15.2 异常处理的基本思想 301
15.3 异常处理语句 302
15.3.1 异常处理语句块 302
15.3.2 使用try-catch处理异常 304
15.4 多种异常的捕获 306
15.5 异常的重新抛出 308
15.6 本章小结 311
15.7 疑难解答 311
15.8 实战练习 312