《C++从入门到精通(第2版)》是清华大学出版社 出版的图书,出版时间2015-2-5。
基本介绍
- 书名C++从入门到精通(第2版)
- ISBN9787302288473
- 定价59.8元
- 出版时间2015-2-5
- 装帧平装
图书简介
《C++从入门到精通(第2版) 》从初学者角度出发,以通俗易懂的语言,丰富多彩的实例,详细讲解了C++语言的基础知识。全书共分18章,包括绪论,数据类型,表达式与语句,条件判断语句,循环语句,函式,数组、指针和引用,构造数据类型,面向对象编程,类和对象,继承与派生,模板,STL标準模板库,RTTI与异常处理,程式调试,档案操作,网路通信,图书管理系统。书中所有知识都结合具体实例进行介绍,涉及的程式代码给出了详细的注释,可以使读者轻鬆领会C++语言的强大,快速提高开发技能。
目录
第1篇基础知识
第1章绪论 3
视频讲解1小时18分钟
1.1C++历史背景 4
1.1.120世纪最伟大的发明 4
1.1.2C++发展历程 4
1.1.3C++中的杰出人物 5
1.2常用开发环境 6
1.2.1VisualC++6.0 6
1.2.2VisualC++2008 7
1.2.3GCC/G++ 8
1.2.4Dev-C 8
1.2.5Eclipse 8
1.3认知C++程式代码 9
1.4C++工程项目档案 10
1.5使用VC创建程式 11
1.6编译与连线过程 13
1.7C++的特点 15
1.8小结 16
第2章数据类型 17
视频讲解1小时26分钟
2.1第一个C++程式 18
2.1.1#include指令 18
2.1.2注释 18
2.1.3main函式 19
2.1.4函式体 19
2.1.5函式返回值 19
2.2数据类型 19
2.3常量及符号 20
2.3.1整型常量 21
2.3.2实型常量 21
2.3.3字元常量 22
2.3.4字元串常量 23
2.3.5其他常量 23
2.4变数 23
2.4.1标识符 24
2.4.2变数与变数说明 24
2.4.3整型变数 25
2.4.4实型变数 25
2.4.5变数赋值 26
2.4.6变数赋初值 26
2.4.7字元变数 27
2.5数据输入与输出 28
2.5.1控制台萤幕 28
2.5.2C++语言中的流 28
2.5.3流操作的控制 30
2.6小结 36
2.7实践与练习 36
第3章表达式与语句 37
视频讲解55分钟
3.1运算符 38
3.1.1算术运算符 38
3.1.2关係运算符 39
3.1.3逻辑运算符 40
3.1.4赋值运算符 41
3.1.5位运算 42
3.1.6移位运算符 43
3.1.7sizeof运算符 45
3.1.8条件运算符 45
3.1.9逗号运算符 46
3.2结合性和优先权 46
3.3表达式 47
3.3.1算术表达式 48
3.3.2关係表达式 48
3.3.3条件表达式 48
3.3.4赋值表达式 49
3.3.5逻辑表达式 49
3.3.6逗号表达式 49
3.3.7表达式中的类型转换 50
3.4语句 53
3.5小结 54
3.6实践与练习 54
第4章条件判断语句 55
视频讲解35分钟
4.1决策分支 56
4.2判断语句 57
4.2.1第一种形式的判断语句 57
4.2.2第二种形式的判断语句 58
4.2.3第三种形式的判断语句 60
4.3使用条件运算符进行判断 61
4.4switch语句 63
4.5判断语句的嵌套 66
4.6小结 68
4.7实践与练习 68
第5章循环语句 69
视频讲解53分钟
5.1while循环 70
5.2do...while循环 71
5.3while与do…while比较 73
5.4for循环语句 74
5.5循环控制 78
5.5.1控制循环的变数 78
5.5.2break语句 79
5.5.3continue语句 80
5.5.4goto语句 81
5.6循环嵌套 82
5.7循环套用实例 84
5.7.1阿姆斯壮数 84
5.7.2巴斯卡三角形 85
5.7.3对输入的分数进行排名 86
5.8小结 87
5.9实践与练习 87
第6章函式 89
视频讲解1小时14分钟
6.1函式概述 90
6.1.1函式的定义 90
6.1.2函式的声明 90
6.2函式参数及返回值 92
6.2.1返回值 92
6.2.2空函式 92
6.2.3形参与实参 93
6.2.4默认参数 93
6.2.5可变参数 95
6.3函式调用 96
6.3.1传值调用 96
6.3.2嵌套调用 98
6.3.3递归调用 98
6.4变数作用域 102
6.5重载函式 103
6.6内联函式 104
6.7变数的存储类别 105
6.7.1auto变数 105
6.7.2static变数 106
6.7.3register变数 108
6.7.4extern变数 108
6.8小结 109
6.9实践与练习 109
第7章数组、指针和引用 111
视频讲解1小时27分钟
7.1一维数组 112
7.1.1一维数组的声明 112
7.1.2一维数组的引用 112
7.1.3一维数组的初始化 113
7.2二维数组 114
7.2.1二维数组的声明 114
7.2.2二维数组元素的引用 115
7.2.3二维数组的初始化 115
7.3字元数组 117
7.4指针 124
7.4.1变数与指针 124
7.4.2指针运算符和取地址运算符 127
7.4.3指针运算 128
7.5指针与数组 130
7.5.1数组的存储 130
7.5.2指针与一维数组 130
7.5.3指针与二维数组 132
7.5.4指针与字元数组 135
7.6指向函式的指针 136
7.7引用 137
7.7.1使用引用传递参数 139
7.7.2指针传递参数 140
7.7.3数组作函式参数 141
7.8指针数组 143
7.9小结 145
7.10实践与练习 145
第8章构造数据类型 147
视频讲解59分钟
8.1结构体 148
8.1.1结构体定义 148
8.1.2结构体变数 149
8.1.3结构体成员及初始化 149
8.1.4结构体的嵌套 152
8.1.5结构体大小 153
8.2结构体与函式 154
8.2.1结构体变数作函式参数 155
8.2.2结构体指针作函式参数 155
8.3结构体数组 156
8.3.1结构体数组声明与引用 157
8.3.2指针访问结构体数组 158
8.4共用体 159
8.4.1共用体的定义与声明 159
8.4.2共用体的大小 160
8.4.3共用体的特点 161
8.5枚举类型 161
8.5.1枚举类型的声明 161
8.5.2枚举类型变数 162
8.5.3枚举类型的运算 163
8.6自定义数据类型 165
8.7小结 166
8.8实践与练习 166
第2篇核心技术
第9章面向对象编程 169
视频讲解32分钟
9.1面向对象概述 170
9.2面向对象与面向过程编程 171
9.2.1面向过程编程 171
9.2.2面向对象编程 171
9.2.3面向对象的特点 172
9.3统一建模语言 172
9.3.1统一建模语言概述 172
9.3.2统一建模语言的结构 173
9.3.3面向对象的建模 175
9.4小结 175
第10章类和对象 177
视频讲解1小时1分钟
10.1C++类 178
10.1.1类概述 178
10.1.2类的声明与定义 178
10.1.3类的实现 180
10.1.4对象的声明 184
10.2构造函式 186
10.2.1构造函式概述 186
10.2.2複製构造函式 188
10.3析构函式 190
10.4类成员 192
10.4.1访问类成员 192
10.4.2内联成员函式 194
10.4.3静态类成员 195
10.4.4隐藏的this指针 197
10.4.5嵌套类 198
10.4.6局部类 199
10.5友元 200
10.5.1友元概述 200
10.5.2友元类 202
10.5.3友元方法 203
10.6命名空间 206
10.6.1使用命名空间 206
10.6.2定义命名空间 206
10.6.3在多个档案中定义命名空间 209
10.6.4定义嵌套的命名空间 210
10.6.5定义未命名的命名空间 212
10.7小结 212
10.8实践与练习 213
第11章继承与派生 215
视频讲解57分钟
11.1继承 216
11.1.1类的继承 216
11.1.2继承后可访问性 218
11.1.3构造函式访问顺序 220
11.1.4子类隐藏父类的成员函式 222
11.2重载运算符 225
11.2.1重载运算符的必要性 225
11.2.2重载运算符的形式与规则 226
11.2.3重载运算符的运算 228
11.2.4转换运算符 230
11.3多重继承 231
11.3.1多重继承定义 231
11.3.2二义性 233
11.3.3多重继承的构造顺序 234
11.4多态 235
11.4.1虚函式概述 236
11.4.2利用虚函式实现动态绑定 236
11.4.3虚继承 237
11.5抽象类 239
11.5.1纯虚函式 239
11.5.2实现抽象类中的成员函式 241
11.6小结 242
11.7实践与练习 243
第3篇高级套用
第12章模板 247
视频讲解49分钟
12.1函式模板 248
12.1.1函式模板的定义 248
12.1.2函式模板的作用 249
12.1.3重载函式模板 251
12.2类模板 252
12.2.1类模板的定义与声明 252
12.2.2简单类模板 254
12.2.3默认模板参数 255
12.2.4为具体类型的参数提供默认值 255
12.2.5有界数组模板 256
12.3模板的使用 258
12.3.1定製类模板 258
12.3.2定製类模板成员函式 260
12.3.3模板部分定製 261
12.4鍊表类模板 262
12.4.1鍊表 263
12.4.2鍊表类模板 265
12.4.3类模板的静态数据成员 267
12.5小结 269
12.6实践与练习 269
第13章STL标準模板库 271
视频讲解35分钟
13.1序列容器 272
13.1.1向量类模板 272
13.1.2双端伫列类模板 274
13.1.3鍊表类模板 276
13.2结合容器 278
13.2.1set类模板 278
13.2.2multiset类模板 282
13.2.3map类模板 286
13.2.4multimap类模板 288
13.3算法 289
13.3.1非修正序列算法 289
13.3.2修正序列算法 292
13.3.3排序算法 295
13.3.4数值算法 301
13.4叠代器 305
13.4.1输出叠代器 305
13.4.2输入叠代器 306
13.4.3前向叠代器 307
13.4.4双向叠代器 307
13.4.5随机访问叠代器 308
13.5小结 309
13.6实践与练习 309
第14章RTTI与异常处理 311
视频讲解22分钟
14.1RTTI(运行时类型识别) 312
14.1.1什幺是RTTI 312
14.1.2RTTI与引用 313
14.1.3RTTI与多重继承 314
14.1.4RTTI映射语法 315
14.2异常处理 317
14.2.1抛出异常 318
14.2.2异常捕获 319
14.2.3异常匹配 322
14.2.4标準异常 324
14.3小结 324
14.4实践与练习 325
第15章程式调试 327
视频讲解33分钟
15.1选择正确的调试方法 328
15.2程式错误常见的4种类型 328
15.2.1语法错误 328
15.2.2连线错误 329
15.2.3运行时错误 329
15.2.4逻辑错误 330
15.3调试工具的使用 330
15.3.1创建调试程式 331
15.3.2进入调试状态 332
15.3.3Watch视窗 332
15.3.4CallStack视窗 332
15.3.5Memory视窗 333
15.3.6Variables视窗 333
15.3.7Registers视窗 333
15.3.8Disassembly视窗 334
15.4调试的基本套用 334
15.4.1变数的跟蹤与查看 334
15.4.2位置断点的使用 335
15.4.3数据断点的使用 337
15.5调试的高级套用 338
15.5.1在调试时修改变数的值 338
15.5.2在循环中调试 339
15.6小结 340
15.7实践与练习 340
第16章档案操作 341
视频讲解58分钟
16.1档案流 342
16.1.1C++中的流类库 342
16.1.2类库的使用 342
16.1.3ios类中的枚举常量 343
16.1.4流的输入/输出 343
16.2档案打开 344
16.2.1打开方式 344
16.2.2默认打开模式 345
16.2.3打开档案创建档案 346
16.3档案的读写 347
16.3.1档案流 347
16.3.2写文本档案 349
16.3.3读取文本档案 349
16.3.4二进制档案的读写 350
16.3.5实现档案複製 351
16.4档案指针移动操作 352
16.4.1档案错误与状态 352
16.4.2档案的追加 353
16.4.3档案结尾的判断 354
16.4.4在指定位置读写档案 356
16.5档案和流的关联和分离 357
16.6删除档案 358
16.7小结 359
16.8实践与练习 359
第17章网路通信 361
视频讲解39分钟
17.1TCP/IP协定 362
17.1.1OSI参考模型 362
17.1.2TCP/IP参考模型 362
17.1.3IP位址 363
17.1.4数据包格式 364
17.2套接字 366
17.2.1Winsock套接字 366
17.2.2Winsock的使用 366
17.2.3套接字阻塞模式 371
17.2.4位元组顺序 371
17.2.5面向连线流 372
17.2.6面向无连线流 372
17.3简单协定通信 373
17.3.1服务端 373
17.3.2客户端 375
17.3.3实例的运行 377
17.4小结 377
17.5实践与练习 377
第4篇项目实战
第18章图书管理系统 381
视频讲解42分钟
18.1系统设计 382
18.1.1需求分析 382
18.1.2系统目标 382
18.1.3系统功能结构 382
18.2图书类 383
18.3主程式 387
18.4添加图书 391
18.5显示图书信息 391
18.6删除图书 394
18.7小结 394