注册 | 登录读书好,好读书,读好书!
读书网-DuShu.com
当前位置: 首页出版图书教育/教材/教辅教材研究生/本科/专科教材C++程序设计(第2版)

C++程序设计(第2版)

C++程序设计(第2版)

定 价:¥36.00

作 者: 谢圣献,左风朝 主审,戴仕明,赵传申 主编,谭亮,李光泉 副主编
出版社: 清华大学出版社
丛编项: 高等院校计算机教育系列教材
标 签: VC++

购买这本书可以去


ISBN: 9787302196143 出版时间: 2009-06-01 包装: 平装
开本: 16开 页数: 410 字数:  

内容简介

  分为面向过程的基础部分(包括第1~8章)和面向对象的高级部分(包括第9~16章)。前面讲述C++基础内容,后面讲述面向对象的程序设计。《C++程序设计(第2版)》加强了实际编程能力的训练,从实际程序开发的需要出发,注重培养学生运用基本知识解决实际问题的能力,而不过分追求知识的系统性和完整性。《C++程序设计(第2版)》可以作为大中专院校理工类学生的C++语言教材,是程序设计语言的入门与提高教材,也可以作为C++语言爱好者的参考教材。C++是一种面向对象的程序设计语言。《C++程序设计(第2版)》从介绍面向对象程序方法入手,以程序设计语言的初学者为对象,由浅入深并结合大量实例,介绍了Visual C++程序设计的原理及方法。《C++程序设计(第2版)》着重介绍了C++语言的基本概念、语法、程序设计思想,以及面向对象的程序设计基本方法。

作者简介

暂缺《C++程序设计(第2版)》作者简介

图书目录

第1章 C++概述 1
1.1 程序设计概述 1
1.1.1 程序设计方法 1
1.1.2 程序设计语言 2
自测题 5
1.2 从C到C++ 5
自测题 6
1.3 简单的C++程序介绍 6
自测题 9
1.4 C++程序的开发步骤 9
自测题 10
1.5 VC++程序的上机过程 10
1.5.1 VC++程序开发环境介绍 10
1.5.2 在VC++6.0环境中开发VC++
程序 11
自测题 15
小结 15
编程项目 16
第2章 数据类型 17
2.1 基本数据类型 17
2.1.1 关键字 17
2.1.2 标识符 18
2.1.3 标点符号 18
2.1.4 分隔符 19
2.1.5 C++的基本数据类型 19
自测题 22
2.2 常量 22
2.2.1 整型常量 22
2.2.2 实型常量 23
2.2.3 字符型常量 24
2.2.4 字符串型常量 25
2.2.5 符号常量 26
自测题 27
2.3 变量 27
2.3.1 变量的命名 27
2.3.2 变量的声明 28
2.3.3 变量的赋值 29
2.3.4 变量的初始化 29
2.3.5 常数型变量 29
自测题 30
小结 31
编程项目 31
第3章 运算符和表达式 32
3.1 基本运算符 32
3.1.1 算术运算符 32
3.1.2 关系运算符 33
3.1.3 逻辑运算符 34
3.1.4 位运算符 35
3.1.5 赋值运算符 37
3.1.6 逗号运算符 38
3.1.7 三目运算符 39
3.1.8 自增、自减运算符 40
3.1.9 sizeof运算符 40
自测题 41
3.2 表达式 41
自测题 45
3.3 运算符优先级和结合性 45
自测题 46
3.4 类型转换 47
3.4.1 自动类型转换 47
3.4.2 强制类型转换 48
3.4.3 赋值转换 49
3.4.4 逻辑表达式求值的优化 49
自测题 49
小结 50
编程项目 50
第4章 C++的基本语句 51
4.1 C++语言的语句和程序结构 51
4.1.1 C++语句分类 51
4.1.2 程序的基本结构 53
自测题 54
4.2 选择结构语句 54
4.2.1 条件语句 54
4.2.2 条件运算符“?:” 58
4.2.3 开关语句 59
自测题 62
4.3 循环结构语句 63
4.3.1 while语句 63
4.3.2 do…while语句 64
4.3.3 for语句 66
4.3.4 三种循环语句的比较 68
4.3.5 循环的嵌套及其应用 68
自测题 69
4.4 控制执行顺序的语句 69
4.4.1 break语句 69
4.4.2 continue语句 70
4.4.3 goto语句 71
4.4.4 exit和abort函数 72
自测题 73
4.5 编程规范和编程风格 73
自测题 75
4.6 程序设计举例 75
自测题 79
小结 79
编程项目 79
第5章 函数和编译预处理 80
5.1 函数的基本概念 80
自测题 82
5.2 函数定义 82
5.2.1 无参函数的定义 82
5.2.2 有参函数的定义 82
5.2.3 函数定义的注意点 83
自测题 84
5.3 函数调用 84
5.3.1 函数调用的一般形式 84
5.3.2 函数调用的方式 84
5.3.3 函数调用的注意点 86
自测题 87
5.4 函数的参数传递和函数的返回值 87
5.4.1 函数的形式参数和实际
参数 87
5.4.2 函数的返回值 88
自测题 89
5.5 函数声明 89
自测题 91
5.6 带默认形参值的函数 91
自测题 93
5.7 内联函数 94
自测题 95
5.8 函数的嵌套和递归调用 95
5.8.1 函数的嵌套调用 95
5.8.2 函数的递归调用 96
自测题 100
5.9 作用域和存储类型 100
5.9.1 作用域 100
5.9.2 局部变量与全局变量 103
5.9.3 动态与静态变量 105
5.9.4 变量的存储类型 106
自测题 110
5.1 0函数的重载 111
自测题 114
5.1 1编译预处理 114
5.1 1.1 包含文件 115
5.1 1.2 不带参数的宏定义 116
5.1 1.3 带参数的宏定义 117
5.1 1.4 条件编译 118
自测题 119
5.1 2 程序的多文件组织 119
5.1 2.1 内部函数和外部函数 120
5.1 2.2 程序的多文件组织方法 120
5.1 2.3 多文件组织的编译和
连接 121
自测题 121
小结 121
编程项目 123
第6章 数组 124
6.1 一维数组的定义及应用 124
6.1.1 一维数组的定义 124
6.1.2 一维数组的初始化 125
6.1.3 一维数组存储 126
6.1.4 一维数组元素的引用 127
6.1.5 一维数组应用 128
自测题 131
6.2 多维数组的定义及使用 131
6.2.1 二维数组的定义 131
6.2.2 二维数组的初始化 132
6.2.3 二维数组的存储 134
6.2.4 二维数组元素的引用 135
6.2.5 二维数组的应用 136
自测题 139
6.3 字符数组的定义和使用 139
6.3.1 字符串 139
6.3.2 字符数组 140
自测题 142
6.4 字符串处理函数 142
自测题 144
6.5 字符数组的应用举例 144
自测题 147
小结 147
编程项目 147
第7章 结构体、共用体和枚举型 148
7.1 结构体的定义及应用 148
7.1.1 结构体类型的定义 148
7.1.2 结构体类型变量的定义 149
7.1.3 结构体类型变量的使用 151
7.1.4 结构体数组 154
自测题 156
7.2 共用体的定义及应用 156
7.2.1 共用体类型的说明 156
7.2.2 共用体类型变量的说明及
使用 157
自测题 158
7.3 枚举类型 158
7.3.1 枚举类型的说明 159
7.3.2 枚举类型变量的使用 160
自测题 163
小结 164
编程项目 164
第8章 指针和引用 165
8.1 指针和指针变量 165
8.1.1 指针的概念 165
8.1.2 指针变量的说明 166
自测题 167
8.2 指针运算 167
8.2.1 指针的赋值运算 167
8.2.2 指针的算术运算 169
8.2.3 指针的关系运算 170
自测题 172
8.3 指针和数组 172
8.3.1 指针与一维数组 172
8.3.2 指针与多维数组 173
8.3.3 指针和字符串 176
自测题 177
8.4 指针数组和多级指针 177
8.4.1 指针数组 177
8.4.2 指向一维数组的指针变量 179
8.4.3 多级指针 180
自测题 181
8.5 指针和函数 182
8.5.1 指针作为函数的参数 182
8.5.2 返回指针的函数 185
8.5.3 指向函数的指针 186
8.5.4 带参数的main()函数 189
自测题 190
8.6 new和delete运算符 190
8.6.1 new和delete运算符的
用法 190
8.6.2 使用new和delete运算符的
注意事项 193
自测题 193
8.7 引用类型和其他类型的指针 194
8.7.1 引用类型变量的说明
和使用 194
8.7.2 函数的引用传递 195
8.7.3 const类型变量 196
8.7.4 void型指针 198
自测题 199
8.8 简单链表 200
8.8.1 链表概述 200
8.8.2 建立链表 200
8.8.3 链表的输出 201
8.8.4 链表的插入 202
8.8.5 链表的删除 204
自测题 207
8.9 类型定义 207
自测题 208
小结 208
编程项目 209
第9章 类和对象 210
9.1 面向对象的程序设计概述 210
9.1.1 面向对象程序设计概念 210
9.1.2 面向对象程序设计的特点 212
9.1.3 类和对象的作用 212
9.1.4 面向对象的软件开发 213
自测题 214
9.2 类的声明和对象的定义 214
9.2.1 类和对象的关系 214
9.2.2 类的定义 214
9.2.3 对象的定义 216
9.2.4 类和对象的作用域 217
9.2.5 类和结构体类型的异同 218
自测题 219
9.3 类的成员函数 219
9.3.1 成员函数的性质 220
9.3.2 在类外定义成员函数 221
9.3.3 内联成员函数 221
9.3.4 成员函数的存储方式 223
自测题 225
9.4 对象成员的引用 225
9.4.1 通过对象名和成员运算符
访问对象中的成员 225
9.4.2 通过指向对象的指针访问
对象中的成员 227
9.4.3 通过对象的引用访问
对象中的成员 227
自测题 228
9.5 类的封装性和信息隐藏 228
9.5.1 公用接口和私有实现的
分离 228
9.5.2 类声明和成员函数定义的
分离 229
自测题 231
9.6 this指针 231
自测题 232
小结 233
编程项目 233
第10章 构造函数和析构函数 235
10.1 构造函数 235
10.1.1 定义构造函数 235
10.1.2 对象的初始化 236
10.1.3 构造函数的作用 237
10.1.4 带参数的构造函数 238
10.1.5 用参数初始化列表对数据
成员初始化 240
10.1.6 默认的构造函数 241
10.1.7 构造函数的重载 242
自测题 244
10.2 析构函数 244
10.2.1 析构函数的定义 245
10.2.2 默认的析构函数 247
10.2.3 不同存储类型的对象调用
构造函数及析构函数 247
自测题 247
10.3 调用构造函数和析构函数的
顺序 248
自测题 250
10.4 对象数组和对象指针 251
10.4.1 对象数组 251
10.4.2 对象指针 252
自测题 254
10.5 共用数据的保护 255
10.5.1 常对象 255
10.5.2 对象成员 255
10.5.3 指向对象的常指针 256
10.5.4 指向常对象的指针变量 257
10.5.5 对象的常引用 258
自测题 258
10.6 对象的动态建立和释放 259
自测题 259
10.7 对象的赋值和复制 260
10.7.1 对象的赋值 260
10.7.2 对象的复制 260
自测题 262
10.8 静态成员 262
10.8.1 静态数据成员 263
10.8.2 静态成员函数 264
自测题 265
10.9 友元 265
10.9.1 友元函数 265
10.9.2 友元类 268
自测题 270
小结 270
编程项目 271
第11章 继承和派生 272
11.1 继承和派生的概念 272
11.1.1 基本概念 272
11.1.2 单一继承 273
11.1.3 多重继承 274
自测题 277
11.2 派生类成员的访问属性 277
11.2.1 公有继承 277
11.2.2 私有继承 279
11.2.3 保护成员和保护继承 280
11.2.4 多级派生时的访问属性 281
自测题 282
11.3 派生类的构造函数和析构函数 283
11.3.1 简单的派生类的构造
函数 283
11.3.2 有成员对象的派生类的
构造函数 284
11.3.3 多级派生和多重继承的
构造函数 286
11.3.4 派生类构造函数的特殊
形式 288
11.3.5 派生类的析构函数 289
11.3.6 多重继承的二义性问题 293
自测题 296
11.4 虚基类 296
自测题 298
11.5 子类型关系 298
自测题 301
小结 302
编程项目 303
第12章 多态性和虚函数 304
12.1 多态性的概念 304
自测题 305
12.2 虚函数 305
12.2.1 虚函数的作用 305
12.2.2 静态关联和动态关联 306
12.2.3 虚函数的使用 308
12.2.4 虚析构函数 311
自测题 312
12.3 纯虚函数和抽象类 313
12.3.1 纯虚函数 313
12.3.2 抽象类 313
12.3.3 应用实例 313
自测题 316
小结 317
编程项目 317
第13章 运算符重载 318
13.1 运算符重载 318
13.1.1 运算符重载的概念 318
13.1.2 运算符重载的方法和
规则 319
自测题 322
13.2 重载运算符 322
13.2.1 重载双目运算符 322
13.2.2 重载单目运算符 324
自测题 328
13.3 重载流插入和流提取运算符 328
13.3.1 重载流插入运算符“>” 329
自测题 331
13.4 几种特殊运算符的重载 331
13.4.1 重载下标运算符 331
13.4.2 重载new和delete
运算符 333
13.4.3 重载函数调用运算符
“()” 334
自测题 335
13.5 不同类型数据间的转换 335
13.5.1 标准类型数据间的转换 336
13.5.2 转换构造函数 336
13.5.3 类型转换函数 337
自测题 338
13.6 字符串类 338
自测题 341
小结 341
编程项目 342
第14章 输入/输出流与文件操作 343
14.1 流的概念 343
自测题 345
14.2 基本I/O流类体系概述 345
14.2.1 基本I/O流类体系 345
14.2.2 预定义的标准输入/
输出流 346
自测题 347
14.3 流的格式控制与标准输入/输出 348
14.3.1 流的格式控制 348
14.3.2 标准输出的控制格式 349
14.3.3 标准输入的控制格式 353
自测题 359
14.4 文件流和文件操作 360
14.4.1 文件的概念 360
14.4.2 文件流类体系和文件流 361
14.4.3 文件的打开与关闭 362
14.4.4 文本文件的使用 365
14.4.5 二进制文件的使用 369
自测题 375
小结 375
编程项目 376
第15章 模板 377
15.1 模板的概念 377
自测题 378
15.2 函数模板 378
15.2.1 函数模板的定义 378
15.2.2 函数模板的使用和
实例化 379
15.2.3 函数模板的重载 380
15.2.4 函数模板与宏和函数
重载的比较 381
自测题 382
15.3 类模板 382
15.3.1 类模板的定义 382
15.3.2 类模板的实例化 383
自测题 385
小结 385
编程项目 385
第16章 异常处理 386
16.1 异常的概念 386
自测题 387
16.2 C++的异常处理机制 387
16.2.1 抛出异常 388
16.2.2 try块 388
16.2.3 捕获和处理异常 389
16.2.4 异常处理的执行过程 390
自测题 392
16.3 异常对象 392
16.3.1 类异常的定义和异常
对象的使用 392
16.3.2 异常处理中对象的构造和
析构 394
自测题 400
16.4 异常的重新抛出与嵌套处理 400
自测题 403
16.5 异常规范 403
自测题 404
小结 405
编程项目 405
附录1 ASCII码表 406
附录2 常用的库函数 407
参考文献 411

本目录推荐