《C++语言程序设计》PDF下载

  • 购买积分:13 如何计算积分?
  • 作  者:蒋爱军,刘红梅,王泳,吴维刚编著
  • 出 版 社:北京:人民邮电出版社
  • 出版年份:2014
  • ISBN:9787115330758
  • 页数:378 页
图书介绍:本书共包括12章,其主要内容包括面向对象程序设计的基本思想,数据类型、运算符和表达式,基本控制结构,函数,数组、指针与引用,类和对象,继承和派生,虚函数与多态性,运算符重载,模板,C++流和异常处理等。

第1章 程序设计与C++语言入门 1

1.1 程序及相关概念 1

1.1.1 计算机与用户(人) 1

1.1.2 算法 2

1.1.3 程序 3

1.2 程序设计 3

1.2.1 程序设计的基本概念 3

1.2.2 程序设计过程 4

1.2.3 程序设计方法 4

1.3 程序设计语言 7

1.3.1 机器语言 8

1.3.2 汇编语言 8

1.3.3 高级语言 8

1.3.4 编译型语言与解释型语言 8

1.3.5 C++语言 9

1.4 C++程序的结构 9

1.4.1 注释 9

1.4.2 预处理指示 9

1.4.3 以函数为单位的程序结构 10

1.4.4 以类为单位的程序结构 11

1.5 C++程序的实现过程 13

习题 14

第2章 内置数据类型与基本输入输出 15

2.1 数据类型概述 15

2.1.1 数据类型的基本概念 15

2.1.2 C++语言类型系统的基本特点 15

2.2 标识符概述 16

2.2.1 C++语言中的基本记号 16

2.2.2 标识符 17

2.3 常量和变量 18

2.3.1 变量和变量的声明 18

2.3.2 常量和常量的声明 19

2.4 内置数据类型 20

2.4.1 内置数据类型概述 20

2.4.2 字符类型常量和变量 21

2.4.3 整数类型常量和变量 22

2.4.4 浮点类型常量和变量 23

2.4.5 布尔类型常量和变量 23

2.4.6 字符串类型常量和变量 24

2.5 操作符与表达式 24

2.5.1 操作符与表达式的基本概念 24

2.5.2 各种操作符和表达式详解 26

2.6 类型之间的关系 29

2.6.1 隐式类型转换 30

2.6.2 显式(强制)类型转换 30

2.7 标准库的使用和简单的输入输出 31

2.7.1 输出 31

2.7.2 输入 31

2.8 应用举例 32

习题 32

第3章 语句与基本控制结构 34

3.1 语句及分类 34

3.1.1 声明语句 34

3.1.2 表达式语句 35

3.1.3 转移语句 35

3.1.4 块语句 36

3.1.5 空语句 37

3.2 选择结构 37

3.2.1 三种基本控制结构 37

3.2.2 if语句 38

3.2.3 switch语句 40

3.3 循环结构 41

3.3.1 while语句 42

3.3.2 do-while语句 43

3.3.3 for语句 43

3.3.4 循环中的break语句 44

3.3.5 continue语句 45

3.4 应用举例 46

习题 48

第4章 函数 51

4.1 概述 51

4.2 函数定义与函数原型 53

4.2.1 函数定义 53

4.2.2 函数原型 54

4.3 函数调用与参数传递 55

4.3.1 函数调用 55

4.3.2 参数传递 57

4.4 标识符的作用域 62

4.4.1 作用域的基本概念 62

4.4.2 作用域的具体规则 63

4.4.3 变量的声明与定义 64

4.4.4 名字空间 65

4.5 变量的生命期 66

4.6 预处理指示 69

4.6.1 文件包含 69

4.6.2 宏定义 69

4.6.3 条件编译 70

4.7 标准库函数 70

4.8 函数的接口设计和注释 71

4.8.1 前置条件和后置条件 71

4.8.2 函数的注释 71

4.8.3 函数的接口与实现 71

4.8.4 函数接口的设计 72

4.9 递归 73

4.9.1 什么是递归 73

4.9.2 递归的实现 74

4.9.3 汉诺塔问题 75

4.10 应用举例 76

习题 77

第5章 枚举、结构与类 79

5.1 简单数据类型与构造式数据类型 79

5.2 枚举类型 79

5.3 结构类型 81

5.3.1 结构类型的定义及其变量的声明和使用 81

5.3.2 结构变量的整体操作 83

5.3.3 层次结构 84

5.3.4 匿名结构类型 85

5.4 抽象、封装与信息隐藏 85

5.4.1 抽象 85

5.4.2 数据封装与隐藏 86

5.5 类与对象 89

5.5.1 类 89

5.5.2 对象的创建 94

5.5.3 对象的初始化 94

5.6 关于面向对象程序设计的若干基本问题 98

5.6.1 面向过程与面向对象 98

5.6.2 术语 102

5.7 应用举例 102

习题 105

第6章 数组与指针 107

6.1 数组类型 107

6.1.1 一维数组 107

6.1.2 二维数组 113

6.2 指针类型 120

6.2.1 基本概念 120

6.2.2 指针常量与指针变量 121

6.2.3 指针的运用 124

6.3 指针类型与数组 128

6.3.1 通过指针引用数组元素 128

6.3.2 数组作函数参数的进一步讨论 131

6.3.3 动态分配内存 133

6.3.4 二维数组与指针 136

6.4 main函数的形参 138

6.5 指向结构变量的指针 139

6.6 对象指针 140

6.6.1 基本概念 140

6.6.2 对象的动态创建和撤销 141

6.6.3 对象的复制 142

6.7 函数指针 143

6.8 应用举例 144

习题 149

第7章 字符串 151

7.1 C风格字符串 151

7.1.1 字符串常量 151

7.1.2 字符数组 151

7.2 C字符串操作 153

7.2.1 获得字符串长度 153

7.2.2 C字符串的复制 153

7.2.3 C字符串的比较 154

7.2.4 C字符串的连接 154

7.2.5 C字符串的类型转换 155

7.2.6 处理单个字符 156

7.3 string对象字符串 156

7.3.1 string对象的声明、初始化与赋值 157

7.3.2 string字符串的输入和输出 157

7.3.3 string字符串的长度 158

7.3.4 string字符串的比较 158

7.3.5 string字符串的子串 158

7.3.6 string字符串的连接 159

7.3.7 string对象转换成C字符串 159

7.4 应用举例 160

习题 161

第8章 继承与组合 164

8.1 继承的概念 164

8.2 C++中的继承 165

8.2.1 基本概念 165

8.2.2 继承实例 167

8.2.3 派生类中继承成员函数的重定义 172

8.2.4 继承层次中的构造函数和析构函数 172

8.3 组合 176

8.3.1 组合的语法和图形表示 176

8.3.2 组合与构造函数和析构函数 177

8.3.3 组合的实例 178

8.4 继承与组合的比较 182

8.5 多重继承与重复继承 182

8.5.1 多重继承 182

8.5.2 多重继承的构造函数 185

8.5.3 多重继承中存在的问题:名字冲突 186

8.5.4 重复继承 187

8.6 应用举例 189

习题 201

第9章 重载 205

9.1 函数重载 205

9.1.1 什么是函数重载 205

9.1.2 为什么要使用函数重载 209

9.1.3 使用函数重载时需要注意的问题 209

9.2 复制构造函数 213

9.2.1 复制构造函数的语法形式 213

9.2.2 复制构造函数的使用场合 213

9.3 操作符重载 224

9.3.1 C++操作符的函数特性 224

9.3.2 操作符重载的规则 224

9.3.3 类成员操作符重载 225

9.3.4 友元操作符重载 229

9.4 应用举例 232

习题 238

第10章 I/O流与文件 240

10.1 概述 240

10.1.1 何为I/O 240

10.1.2 应用程序、操作系统与I/O 240

10.1.3 标准I/O流cin和cout 241

10.1.4 文件I/O流 242

10.2 二进制文件I/O 245

10.2.1 文本文件I/O Vs.二进制文件I/O 245

10.2.2 二进制文件I/O 245

10.3 应用举例 248

习题 251

第11章 多态性与虚函数 252

11.1 绑定方式与多态性 252

11.1.1 基本概念 252

11.1.2 多态性的作用 253

11.2 虚函数 254

11.2.1 虚函数举例 254

11.2.2 使用虚函数的特定版本 256

11.2.3 虚析构函数 257

11.3 纯虚函数和抽象类 258

11.3.1 纯虚函数 258

11.3.2 抽象类 259

11.4 应用举例 259

习题 269

第12章 异常处理 271

12.1 异常处理概述 271

12.2 C++语言中的异常处理 272

12.2.1 throw语句 272

12.2.2 try块与异常的捕获及处理 273

12.2.3 标准库异常类 285

12.2.4 异常说明(exception specification) 286

12.3 应用举例 287

习题 298

第13章 模板 300

13.1 泛型编程概述 300

13.2 函数模板 300

13.2.1 函数模板的定义 301

13.2.2 函数模板的实例化 301

13.2.3 函数模板与重载 303

13.3 类模板 305

13.3.1 类模板的定义 306

13.3.2 类模板的实例化 309

13.3.3 模板编译与类模板的实现 310

13.4 非类型模板形参 313

13.4.1 函数模板的非类型形参 313

13.4.2 类模板的非类型形参 313

13.5 应用举例 314

习题 326

第14章 标准模板库 328

14.1 概述 328

14.2 迭代器 329

14.3 容器 330

14.3.1 顺序容器 330

14.3.2 关联容器 341

14.3.3 容器适配器 348

14.4 泛型算法 351

14.4.1 算法简介 351

14.4.2 算法举例 354

14.5 应用举例 356

习题 364

附录A C++保留字表 366

附录B 标准ASCII代码表 367

附录C 常用数学函数 368

附录D C++标准库头文件 369

附录E 标准库泛型算法简介 370

附录F 主要术语英汉对照表 376

参考文献 378