21世纪高等学校计算机规划教材——名家系列

C++语言程序设计教程(第2版)

分享 推荐 0 收藏 8 阅读 3.0K
吕凤翥 , 王树彬 (编著) 978-7-115-31891-6

关于本书的内容有任何问题,请联系 刘博


1.普通高等教育"十一五"国家级规划教材
2.北京大学教学名师力作
3.针对难点和疑点,加强了解释和分析
4.内容安排上强调边看书边思考,注重培养学习思考能力。许多例题中都提出了思考问题,每章后边都从多方面给出练习题,引导读者去思考

内容摘要


本书系统介绍C++ 语言的基础知识、基本语法和编程方法。重点讲述C++ 语言面向对象的重要特征,包括类和对象、继承性和派生类、多态性和虚函数、模板和C++ 语言实现的常用数据结构、异常处理和命名空间等重要内容。同时,还介绍C++ 语言对C 语言的继承和改进。
本书内容系统全面,偏重应用;通过例题详细讲述C++ 语言具有的封装性、继承性和多态性,并阐述使用C++ 语言编程的方法、技巧和工具等。为了方便教学,本书每章最后都备有大量的练习题和上机题。

目录

目 录

第 1章 C++语言概述 1
1.1 面向对象的概念 1
1.1.1 面向对象方法的由来 1
1.1.2 面向对象的基本概念 2
1.2 C++语言的特点 3
1.2.1 C++语言是面向对象的程序设计语言 3
1.2.2 C++语言继承了C语言 3
1.2.3 C++语言对C语言进行了改进 4
1.3 C++程序在结构上的特点 4
1.3.1 C++程序举例 5
1.3.2 C++程序结构上的特点 7
1.4 C++程序的实现 7
1.4.1 C++程序的编辑、编译和运行 7
1.4.2 C++程序实现举例 8
练习题1 12
上机指导1 14

第 2章 变量和表达式 16
2.1 C++语言的字符集和单词 16
2.1.1 C++语言字符集 16
2.1.2 单词及其词法规则 16
2.2 常量 18
2.2.1 常量的种类 18
2.2.2 符号常量 21
2.3 变量 22
2.3.1 变量的三要素 22
2.3.2 变量的定义格式 24
2.3.3 变量的作用域 25
2.4 运算符和表达式 27
2.4.1 运算符的种类和功能 27
2.4.2 运算符的优先级和结合性 30
2.4.3 表达式的值和类型 31
2.4.4 表达式求值举例 32
2.5 类型转换 36
2.5.1 自动转换 36
2.5.2 强制转换 37
2.6 数组 37
2.6.1 数组的定义格式和数组元素的表示方法 37
2.6.2 数组的赋值 39
2.6.3 字符数组和字符串 42
练习题2 46
上机指导2 54

第3章 语句和预处理 56
3.1 表达式语句和复合语句 56
3.1.1 表达式语句和空语句 56
3.1.2 复合语句和分程序 57
3.2 选择语句 57
3.2.1 条件语句 57
3.2.2 开关语句 59
3.3 循环语句 61
3.3.1 while循环语句 61
3.3.2 do-while循环语句 62
3.3.3 for循环语句 63
3.3.4 多重循环 65
3.4 转向语句 67
3.4.1 goto语句 67
3.4.2 break语句 68
3.4.3 continue语句 68
3.5 类型定义语句 69
3.6 预处理功能 70
3.6.1 文件包含命令 70
3.6.2 宏定义命令 71
练习题3 72
上机指导3 77

第4章 指针和引用 78
4.1 指针和指针的定义格式 78
4.1.1 什么是指针 78
4.1.2 指针的定义格式 79
4.2 指针的运算 80
4.2.1 指针的赋值运算和增值运算 80
4.2.2 指针的比较运算和相减运算 81
4.2.3 指针运算和地址运算 82
4.3 指针和数组 83
4.3.1 指针可表示数组元素 83
4.3.2 字符指针和字符串处理函数 86
4.3.3 指向数组的指针和指针数组 88
4.4 引用 90
4.4.1 引用和引用的创建方法 91
4.4.2 引用和指针 92
练习题4 93
上机指导4 97

第5章 函数 98
5.1 函数的定义和说明 98
5.1.1 函数的定义 98
5.1.2 函数的说明方法 100
5.2 函数的参数和返回值 100
5.2.1 函数的参数 100
5.2.2 设置函数参数的默认值 101
5.2.3 函数返回值的实现 103
5.3 函数的调用 104
5.3.1 函数的传值调用 104
5.3.2 函数的引用调用 105
5.3.3 函数的嵌套调用 106
5.4 指针和引用作函数参数和返回值 107
5.4.1 指针作函数参数和返回值 107
5.4.2 引用作函数参数和返回值 109
5.5 重载函数和内联函数 110
5.5.1 重载函数 110
5.5.2 内联函数 113
5.6 函数的存储类 113
5.6.1 外部函数 114
5.6.2 内部函数 115
练习题5 116
上机指导5 120

第6章 类和对象(一) 122
6.1 类的定义格式和对象的定义方法 122
6.1.1 类的定义格式 122
6.1.2 对象的定义方法 124
6.1.3 对象成员的表示 125
6.2 对象的初始化 127
6.2.1 构造函数的功能、种类和特点 127
6.2.2 析构函数的功能和特点 128
6.3 数据成员的类型和成员函数的特性 130
6.3.1 类中数据成员类型的规定 130
6.3.2 成员函数的特性 131
6.4 静态成员 133
6.4.1 静态数据成员 133
6.4.2 静态成员函数 135
6.5 常成员 136
6.5.1 常数据成员 136
6.5.2 常成员函数 137
6.6 友元函数和友元类 138
6.6.1 友元函数 139
6.6.2 友元类 140
6.7 类型转换 141
6.7.1 类型的隐含转换 141
6.7.2 一般数据类型转换为类类型 142
6.7.3 类类型转换为一般数据类型 142
练习题6 143
上机指导6 149

第7章 类和对象(二) 151
7.1 对象指针和对象引用 151
7.1.1 对象指针 151
7.1.2 this指针 154
7.1.3 对象引用 155
7.2 对象数组和对象指针数组 157
7.2.1 对象数组 157
7.2.2 对象指针数组 158
7.2.3 指向对象数组的指针 159
7.3 子对象和堆对象 160
7.3.1 子对象 160
7.3.2 堆对象 162
7.4 类的作用域和对象的生存期 165
7.4.1 类的作用域 166
7.4.2 对象的生存期 166
7.5 结构的应用 167
7.5.1 结构变量和结构数组 168
7.5.2 使用struct定义类 171
练习题7 172
上机指导7 178

第8章 继承性和派生类 181
8.1 继承的概念 181
8.1.1 基类和派生类 181
8.1.2 单重继承和多重继承 182
8.1.3 派生类的定义格式 182
8.1.4 派生类成员的访问权限 183
8.2 单重继承 187
8.2.1 单重继承派生类的构造函数和析构函数 187
8.2.2 子类型和赋值兼容规则 193
8.3 多重继承 195
8.3.1 多重继承派生类的构造函数和析构函数 196
8.3.2 多重继承的二义性 198
练习题8 201
上机指导8 206

第9章 多态性和虚函数 209
9.1 运算符重载 209
9.1.1 运算符重载的概念 209
9.1.2 运算符重载的两种方法 210
9.1.3 运算符重载举例 214
9.2 静态联编和动态联编 217
9.2.1 联编的概念 217
9.2.2 虚函数 220
9.2.3 动态联编 221
9.2.4 虚析构函数 224
9.3 纯虚函数和抽象类 225
9.3.1 纯虚函数 225
9.3.2 抽象类 226
练习题9 227
上机指导9 233

第 10章 C++语言文件的输入/输出操作 234
10.1 I/O流类库概述 234
10.1.1 输入/输出流 234
10.1.2 I/O流类库的主要功能 234
10.2 标准文件的输入/输出操作 235
10.2.1 屏幕输出操作 235
10.2.2 键盘输入操作 238
10.3 格式输出操作 241
10.3.1 使用流对象的成员函数进行格式输出 242
10.3.2 使用控制符进行格式输出 244
10.4 磁盘文件的操作 245
10.4.1 打开文件和关闭文件操作 245
10.4.2 文件的输入/输出操作 247
10.4.3 随机文件操作 250
练习题10 251
上机指导10 255

第 11章 模板 257
11.1 模板的基本概念 257
11.2 函数模板 257
11.2.1 函数模板的定义格式 257
11.2.2 函数模板与模板函数 260
11.3 类模板 261
11.3.1 类模板的定义格式 261
11.3.2 类模板继承 265
练习题11 266
上机指导11 269

第 12章 数据结构 271
12.1 几种常用的数据结构 271
12.1.1 栈 271
12.1.2 队列 274
12.1.3 线性链表 276
12.1.4 二叉树 280
12.2 查找和排序运算 284
12.2.1 查找运算 284
12.2.2 排序运算 290
练习题12 292
上机指导12 297

第 13章 异常处理和命名空间 298
13.1 异常处理 298
13.1.1 C++的异常处理机制 298
13.1.2 异常与继承 305
13.1.3 构造函数和析构函数的异常处理 306
13.2 命名空间 308
13.2.1 命名空间的定义和使用方法 308
13.2.2 简化使用命名空间成员 311
13.2.3 标准命名空间 313
练习题13 313
上机指导13 318

附录A 字符的ASCII码表 320
附录B Microsoft Visual C++6.0集成开发工具简介 322
附录C C++标准库简介 329

参考文献 332

读者评论

赶紧抢沙发哦!

我要评论

作者介绍

吕凤翥,北京大学教授,原北京大学计算中心教研室主任,从事计算机教学和科研工作30多年。具有丰富的计算机教学经验;所编写的计算机语言方面的教材结构清晰、叙述流畅、适合教学,被众多学校广泛使用。

同系列书

相关图书

人邮微信
本地服务
人邮微信
教师服务
二维码
读者服务
读者服务
返回顶部
返回顶部