C++程序设计PDF电子书下载
- 电子书积分:15 积分如何计算积分?
- 作 者:谭浩强编著
- 出 版 社:北京:清华大学出版社
- 出版年份:2011
- ISBN:9787302254881
- 页数:481 页
第1篇 基本知识 3
第1章 C++的初步知识 3
1.1从C到C++ 3
1.2最简单的C++程序 5
1.3 C++程序的构成和书写形式 12
1.4 C++程序的编写和实现 13
1.5关于C++上机实践 15
习题 15
第2章 数据类型和表达式 18
2.1 C++的数据类型 18
2.2常量 20
2.2.1什么是常量 20
2.2.2数值常量 20
2.2.3字符常量 22
2.2.4符号常量 25
2.3变量 26
2.3.1什么是变量 26
2.3.2变量名规则 26
2.3.3定义变量 27
2.3.4对变量赋初值 28
2.3.5常变量 29
2.4 C++的运算符 30
2.5算术运算符与算术表达式 30
2.5.1基本的算术运算符 30
2.5.2算术表达式和运算符的优先级与结合性 31
2.5.3表达式中各类数值型数据间的混合运算 31
2.5.4自增(++++)和自减(--)运算符 32
2.5.5强制类型转换运算符 33
2.6赋值运算符和赋值表达式 35
2.6.1赋值运算符 35
2.6.2赋值过程中的类型转换 35
2.6.3复合赋值运算符 36
2.6.4赋值表达式 37
2.7逗号运算符和逗号表达式 38
习题 39
第2篇 基于过程的程序设计 45
第3章 程序设计初步 45
3.1基于过程的程序设计和算法 45
3.1.1算法的概念 45
3.1.2算法的表示 46
3.2 C++的程序结构和C++语句 47
3.3赋值操作 50
3.4 C++的输入与输出 50
3.4.1输入流与输出流的基本操作 51
3.4.2在标准输入流与输出流中使用控制符 53
3.4.3用getchar和putchar函数进行字符的输入和输出 56
3.4.4用scanf和printf函数进行输入和输出 57
3.5编写顺序结构的程序 58
3.6关系运算和逻辑运算 59
3.6.1关系运算和关系表达式 60
3.6.2逻辑常量和逻辑变量 61
3.6.3逻辑运算和逻辑表达式 62
3.7选择结构和if语句 64
3.7.1 if语句的形式 64
3.7.2 if语句的嵌套 67
3.7.3条件运算符和条件表达式 68
3.7.4多分支选择结构与switch语句 69
3.7.5编写选择结构的程序 71
3.8循环结构和循环语句 74
3.8.1用while语句构成循环 74
3.8.2用do-while语句构成循环 75
3.8.3用for语句构成循环 76
3.8.4几种循环的比较 79
3.8.5循环的嵌套 79
3.8.6提前结束循环(break语句和continue语句) 80
3.8.7编写循环结构的程序 81
习题 85
第4章 利用函数实现指定的功能 88
4.1为什么需要函数 88
4.2定义函数的一般形式 90
4.2.1定义无参函数的一般形式 90
4.2.2定义有参函数的一般形式 91
4.3函数参数和函数的值 91
4.3.1形式参数和实际参数 91
4.3.2函数的返回值 93
4.4函数的调用 94
4.4.1函数调用的一般形式 94
4.4.2函数调用的方式 94
4.4.3对被调用函数的声明和函数原型 94
4.5函数的嵌套调用 97
4.6函数的递归调用 99
4.7内置函数 103
4.8函数的重载 104
4.9函数模板 107
4.10有默认参数的函数 109
4.11局部变量和全局变量 111
4.11.1局部变量 111
4.11.2全局变量 112
4.12变量的存储类别 113
4.12.1动态存储方式与静态存储方式 113
4.12.2自动变量 114
4.12.3用static声明静态局部变量 115
4.12.4用register声明寄存器变量 117
4.12.5用extern声明外部变量 118
4.12.6用static声明静态外部变量 119
4.13变量属性小结 120
4.14关于变量的声明和定义 122
4.15内部函数和外部函数 123
4.15.1内部函数 123
4.15.2外部函数 123
4.16头文件 125
4.16.1头文件的内容 125
4.16.2关于C++标准库和头文件的形式 126
习题 126
第5章 利用数组处理批量数据 128
5.1为什么需要用数组 128
5.2定义和引用一维数组 129
5.2.1定义一维数组 129
5.2.2引用一维数组的元素 129
5.2.3一维数组的初始化 130
5.2.4一维数组程序举例 130
5.3定义和引用二维数组 132
5.3.1定义二维数组 133
5.3.2引用二维数组的元素 134
5.3.3二维数组的初始化 134
5.3.4二维数组程序举例 136
5.4用数组作函数参数 137
5.5字符数组 141
5.5.1定义和初始化字符数组 141
5.5.2字符数组的赋值与引用 142
5.5.3字符串和字符串结束标志 143
5.5.4字符数组的输入输出 144
5.5.5使用字符串处理函数对字符串进行操作 146
5.5.6字符数组应用举例 148
5.6 C++处理字符串的方法——字符串类与字符串变量 149
5.6.1字符串变量的定义和引用 150
5.6.2字符串变量的运算 151
5.6.3字符串数组 151
5.6.4字符串运算举例 152
习题 155
第6章 善于使用指针与引用 157
6.1什么是指针 157
6.2变量与指针 159
6.2.1定义指针变量 159
6.2.2引用指针变量 161
6.2.3用指针作函数参数 163
6.3数组与指针 168
6.3.1指向数组元素的指针 168
6.3.2用指针变量作函数形参接收数组地址 170
6.4字符串与指针 173
6.5函数与指针 175
6.5.1用函数指针调用函数 175
6.5.2用指向函数的指针作函数参数 176
6.6返回指针值的函数 177
6.7指针数组和指向指针的指针 177
6.7.1指针数组 177
6.7.2指向指针的指针 179
6.8 const指针 181
6.9 void指针类型 183
6.10有关指针的数据类型和指针运算的小结 184
6.10.1有关指针的数据类型的小结 184
6.10.2指针运算小结 185
6.11引用 186
6.11.1什么是变量的引用 186
6.11.2引用的简单使用 188
6.11.3引用作为函数参数 188
习题 192
第7章 用户自定义数据类型 194
7.1结构体类型 194
7.1.1为什么需要用结构体类型 194
7.1.2结构体类型变量的定义方法及其初始化 195
7.1.3引用结构体变量 198
7.1.4结构体数组 200
7.1.5指向结构体变量的指针 204
7.1.6结构体类型数据作为函数参数 207
7.1.7用new和delete运算符进行动态分配和撤销存储空间 210
7.2共用体类型 212
7.3枚举类型 212
7.4用typedef声明新的类型名 216
习题 218
第3篇 基于对象的程序设计 223
第8章 类和对象的特性 223
8.1面向对象程序设计方法概述 223
8.1.1什么是面向对象的程序设计 223
8.1.2面向对象程序设计的特点 227
8.1.3类和对象的作用 228
8.1.4面向对象的软件开发 229
8.2类的声明和对象的定义 230
8.2.1类和对象的关系 230
8.2.2声明类类型 230
8.2.3定义对象的方法 233
8.2.4类和结构体类型的异同 234
8.3类的成员函数 236
8.3.1成员函数的性质 236
8.3.2在类外定义成员函数 236
8.3.3内置成员函数 237
8.3.4成员函数的存储方式 239
8.4对象成员的引用 241
8.4.1通过对象名和成员运算符访问对象中的成员 241
8.4.2通过指向对象的指针访问对象中的成员 241
8.4.3通过对象的引用来访问对象中的成员 242
8.5类的封装性和信息隐蔽 242
8.5.1公用接口与私有实现的分离 242
8.5.2类声明和成员函数定义的分离 244
8.5.3面向对象程序设计中的几个名词 245
8.6类和对象的简单应用举例 245
习题 252
第9章 怎样使用类和对象 255
9.1利用构造函数对类对象进行初始化 255
9.1.1对象的初始化 255
9.1.2用构造函数实现数据成员的初始化 256
9.1.3带参数的构造函数 258
9.1.4用参数初始化表对数据成员初始化 260
9.1.5构造函数的重载 261
9.1.6使用默认参数的构造函数 263
9.2析构函数 265
9.3调用构造函数和析构函数的顺序 267
9.4对象数组 269
9.5对象指针 271
9.5.1指向对象的指针 271
9.5.2指向对象成员的指针 272
9.5.3 this指针 275
9.6共用数据的保护 276
9.6.1常对象 277
9.6.2常对象成员 278
9.6.3指向对象的常指针 279
9.6.4指向常对象的指针变量 280
9.6.5对象的常引用 283
9.6.6 const型数据的小结 284
9.7对象的动态建立和释放 284
9.8对象的赋值和复制 286
9.8.1对象的赋值 286
9.8.2对象的复制 287
9.9静态成员 290
9.9.1静态数据成员 290
9.9.2静态成员函数 292
9.10友元 296
9.10.1友元函数 296
9.10.2友元类 300
9.11类模板 300
习题 305
第10章 运算符重载 308
10.1什么是运算符重载 308
10.2运算符重载的方法 310
10.3重载运算符的规则 313
10.4运算符重载函数作为类成员函数和友元函数 314
10.5重载双目运算符 318
10.6重载单目运算符 322
10.7重载流插入运算符“〈〈”和流提取运算符“〉〉” 325
10.7.1重载流插入运算符“〈〈” 325
10.7.2重载流提取运算符“〉〉” 328
10.8有关运算符重载的归纳 329
10.9不同类型数据间的转换 331
10.9.1标准类型数据间的转换 331
10.9.2用转换构造函数进行不同类型数据的转换 331
10.9.3类型转换函数 333
习题 338
第4篇 面向对象的程序设计 343
第11章 继承与派生 343
11.1继承与派生的概念 343
11.2派生类的声明方式 346
11.3派生类的构成 346
11.4派生类成员的访问属性 348
11.4.1公用继承 349
11.4.2私有继承 351
11.4.3保护成员和保护继承 354
11.4.4多级派生时的访问属性 358
11.5派生类的构造函数和析构函数 359
11.5.1简单的派生类的构造函数 359
11.5.2有子对象的派生类的构造函数 363
11.5.3多层派生时的构造函数 366
11.5.4派生类构造函数的特殊形式 368
11.5.5派生类的析构函数 369
11.6多重继承 369
11.6.1声明多重继承的方法 369
11.6.2多重继承派生类的构造函数 370
11.6.3多重继承引起的二义性问题 372
11.6.4虚基类 376
11.7基类与派生类的转换 380
11.8继承与组合 384
11.9继承在软件开发中的重要意义 385
习题 387
第12章 多态性与虚函数 392
12.1多态性的概念 392
12.2一个典型的例子 393
12.3利用虚函数实现动态多态性 398
12.3.1虚函数的作用 398
12.3.2静态关联与动态关联 402
12.3.3在什么情况下应当声明虚函数 403
12.3.4虚析构函数 404
12.4纯虚函数与抽象类 405
12.4.1纯虚函数 405
12.4.2抽象类 406
12.4.3应用实例 407
习题 413
第13章 输入输出流 415
13.1 C++的输入和输出 415
13.1.1输入输出的含义 415
13.1.2 C++的I/O对C的发展——类型安全和可扩展性 415
13.1.3 C++的输入输出流 416
13.2标准输出流 421
13.2.1 cout,cerr和clog流 421
13.2.2标准类型数据的格式输出 423
13.2.3用流成员函数put输出字符 426
13.3标准输入流 427
13.3.1 cin流 427
13.3.2用于字符输入的流成员函数 428
13.3.3 istream类的其他成员函数 429
13.4对数据文件的操作与文件流 433
13.4.1文件的概念 433
13.4.2文件流类与文件流对象 434
13.4.3文件的打开与关闭 435
13.4.4对ASCII文件的操作 437
13.4.5对二进制文件的操作 442
13.5字符串流 447
习题 452
第14章 C++工具 453
14.1异常处理 453
14.1.1异常处理的任务 453
14.1.2异常处理的方法 454
14.1.3在函数声明中进行异常情况指定 461
14.1.4在异常处理中处理析构函数 461
14.2命名空间 464
14.2.1为什么需要命名空间 464
14.2.2什么是命名空间 467
14.2.3使用命名空间解决名字冲突 469
14.2.4使用命名空间成员的方法 471
14.2.5无名的命名空间 473
14.2.6标准命名空间std 473
14.3使用早期的函数库 474
习题 475
参考文献 480
- 《指向核心素养 北京十一学校名师教学设计 英语 七年级 上 配人教版》周志英总主编 2019
- 《设计十六日 国内外美术院校报考攻略》沈海泯著 2018
- 《计算机辅助平面设计》吴轶博主编 2019
- 《高校转型发展系列教材 素描基础与设计》施猛责任编辑;(中国)魏伏一,徐红 2019
- 《景观艺术设计》林春水,马俊 2019
- 《程序逻辑及C语言编程》卢卫中,杨丽芳主编 2019
- 《高等教育双机械基础课程系列教材 高等学校教材 机械设计课程设计手册 第5版》吴宗泽,罗圣国,高志,李威 2018
- 《指向核心素养 北京十一学校名师教学设计 英语 九年级 上 配人教版》周志英总主编 2019
- 《Cinema 4D电商美工与视觉设计案例教程》樊斌 2019
- 《通信电子电路原理及仿真设计》叶建芳 2019
- 《水面舰艇编队作战运筹分析》谭安胜著 2009
- 《市政工程基础》杨岚编著 2009
- 《家畜百宝 猪、牛、羊、鸡的综合利用》山西省商业厅组织技术处编著 1959
- 《《道德经》200句》崇贤书院编著 2018
- 《高级英语阅读与听说教程》刘秀梅编著 2019
- 《计算机网络与通信基础》谢雨飞,田启川编著 2019
- 《看图自学吉他弹唱教程》陈飞编著 2019
- 《法语词汇认知联想记忆法》刘莲编著 2020
- 《培智学校义务教育实验教科书教师教学用书 生活适应 二年级 上》人民教育出版社,课程教材研究所,特殊教育课程教材研究中心编著 2019
- 《国家社科基金项目申报规范 技巧与案例 第3版 2020》文传浩,夏宇编著 2019
- 《大学计算机实验指导及习题解答》曹成志,宋长龙 2019
- 《指向核心素养 北京十一学校名师教学设计 英语 七年级 上 配人教版》周志英总主编 2019
- 《大学生心理健康与人生发展》王琳责任编辑;(中国)肖宇 2019
- 《大学英语四级考试全真试题 标准模拟 四级》汪开虎主编 2012
- 《大学英语教学的跨文化交际视角研究与创新发展》许丽云,刘枫,尚利明著 2020
- 《北京生态环境保护》《北京环境保护丛书》编委会编著 2018
- 《复旦大学新闻学院教授学术丛书 新闻实务随想录》刘海贵 2019
- 《大学英语综合教程 1》王佃春,骆敏主编 2015
- 《大学物理简明教程 下 第2版》施卫主编 2020
- 《指向核心素养 北京十一学校名师教学设计 英语 九年级 上 配人教版》周志英总主编 2019