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

  • 购买积分:11 如何计算积分?
  • 作  者:赵海廷主编
  • 出 版 社:北京:北京理工大学出版社
  • 出版年份:2009
  • ISBN:9787564017996
  • 页数:292 页
图书介绍:本书有14章:C++语言概述,数据类型、运算符及表达式,控制语句,数组,函数,指针,复杂数据类型,类和对象,继承性和派生类,多态性与虚函数,函数和运算符的重载,模板,预处理和异常处理,流和文件流。在体系结构的确定和内容的选择上,本着由浅入深、深入浅出、循序渐进的原则,力求简单明了、通俗易懂,有较强的实用性。

第1章 C++语言概述 1

1.1计算机语言发展概述 1

1.1.1程序和程序设计语言 1

1.1.2结构化程序设计 2

1.1.3面向对象程序设计 2

1.2C++语言的特点及其程序的开发过程 3

1.2.1C++语言的特点 3

1.2.2C++程序的开发过程 4

1.3C++程序的结构 4

1.3.1简单的C++程序 4

1.3.2C++程序的基本结构 5

1.3.3C++程序的书写格式和注释 6

1.4Visual C++ 6.0开发环境 7

1.4.1Visual C++6.0集成开发环境简介 7

1.4.2Visual C++ 6.0程序的开发流程 8

习题1 11

第2章 数据类型、运算符及表达式 13

2.1C++语言的基本词法 13

2.1.1C++的字符集 13

2.1.2C++的标识符 13

2.1.3C++的保留字 14

2.2基本数据类型 14

2.2.1C++的基本数据类型 14

2.2.2常量 15

2.2.3变量 17

2.3运算符与表达式 19

2.3.1运算符与表达式概述 19

2.3.2赋值运算符及表达式 20

2.3.3算术运算符及表达式 20

2.3.4关系运算符及表达式 22

2.3.5逻辑运算符及表达式 23

2.3.6位运算符及表达式 25

2.3.7移位运算符及表达式 26

2.3.8增1、减1运算符及表达式 28

2.3.9其他运算符及表达式 30

2.4C++运算符的优先级和结合性 32

2.5数据类型的转换 32

2.5.1数据类型的自动转换 32

2.5.2数据类型的强制转换 33

习题2 33

第3章 控制语句 36

3.1程序设计概述 36

3.1.1程序设计的基本概念 36

3.1.2N-S图简介 37

3.1.3C++语句的分类 38

3.2数据的输出、输入及顺序结构程序设计 39

3.2.1数据的输出 39

3.2.2数据的输入 39

3.2.3简单的I/O格式控制 40

3.2.4顺序结构程序设计 41

3.3选择控制语句 42

3.3.1条件表达式 42

3.3.2if~else语句 44

3.3.3switch语句 48

3.3.4选择结构程序设计举例 50

3.4循环控制语句 52

3.4.1while循环语句 52

3.4.2do~while循环语句 54

3.4.3for循环语句 55

3.4.4循环的嵌套 56

3.4.5几种循环的比较 58

3.4.6循环结构程序设计举例 59

3.5其他控制语句 61

3.5.1break语句 61

3.5.2continue语句 62

3.5.3goto语句 63

习题3 65

第4章 数组 69

4.1一维数组 69

4.1.1一维数组的定义 69

4.1.2一维数组元素的引用 70

4.1.3一维数组的初始化 71

4.1.4一维数组程序举例 72

4.2字符数组 73

4.2.1字符数组的定义 73

4.2.2字符数组元素的引用 74

4.2.3字符数组的初始化 75

4.2.4字符数组程序举例 76

4.3多维数组 77

4.3.1多维数组的定义 77

4.3.2多维数组元素的引用 78

4.3.3多维数组的初始化 78

4.3.4多维数组应用举例 79

习题4 81

第5章 函数 84

5.1函数的定义、说明和调用 84

5.1.1return语句 84

5.1.2函数的定义 84

5.1.3函数说明 86

5.1.4函数调用 86

5.2函数间的数据传递 87

5.2.1函数间的数值传递 87

5.2.2函数间的地址传递 88

5.2.3函数间的引用传递 89

5.2.4全局变量传递函数处理结果 90

5.2.5利用指针、引用返回函数处理的结果 91

5.3函数的嵌套调用与递归调用 95

5.3.1函数的嵌套调用 95

5.3.2函数的递归调用 96

5.4内联函数 99

5.4.1内联函数的格式及应用 99

5.4.2内联函数要注意的问题 100

5.5带默认参数的函数 100

5.5.1带默认参数的函数应用 100

5.5.2调用默认参数函数应注意的问题 101

5.6变量的生存期、作用域和命名空间 101

5.6.1变量的生存期 102

5.6.2变量的作用域 103

5.6.3命名空间 104

习题5 107

第6章 指针 110

6.1指针变量的定义和初始化 110

6.1.1指针与指针的目标变量 110

6.1.2指针变量的定义与初始化 112

6.1.3近程和远程指针 113

6.2指针运算 115

6.2.1指针的一般运算 115

6.2.2指针的算术运算 115

6.2.3指针的关系运算 117

6.3指针与数组、指针数组 118

6.3.1指针与数组 119

6.3.2指针数组 122

6.4指向数组的指针与多级指针 125

6.4.1指向数组的指针 125

6.4.2多级指针 127

6.5指针与函数 129

6.5.1作为函数参数的指针 129

6.5.2指针型函数 130

6.5.3指向函数的指针 133

6.6引用与命令行参数 136

6.6.1引用的定义 137

6.6.2引用与函数 137

6.6.3命令行参数 139

习题6 140

第7章 复杂数据类型 143

7.1结构体 143

7.1.1结构体类型说明和结构体变量定义 143

7.1.2结构体变量的初始化和成员的引用 145

7.1.3结构体数组和指向结构体的指针 146

7.1.4结构体和函数 148

7.1.5结构体型函数和结构体指针型函数 149

7.1.6结构体嵌套和位域结构体 152

7.2联合体 155

7.2.1联合体类型的说明与联合体变量的定义 155

7.2.2联合体变量与结构体变量的比较 156

7.2.3结构体中嵌套联合体 157

7.2.4联合体中嵌套位域结构体 159

7.3枚举 160

7.3.1枚举类型的说明与变量的定义 160

7.3.2枚举的应用 162

7.4用typedef定义数据类型 164

习题7 164

第8章 类与对象 168

8.1面向对象程序设计 168

8.1.1面向对象方法是一种认知方法 168

8.1.2面向对象程序设计的特点 169

8.2类和对象 172

8.2.1类的说明 172

8.2.2类的数据成员和成员函数 172

8.2.3类成员的访问控制 173

8.2.4对象定义及成员的表示方法 174

8.3构造函数和析构函数 175

8.3.1构造函数 175

8.3.2拷贝构造函数 176

8.3.3析构函数 179

8.4类的静态成员 180

8.4.1静态数据成员 180

8.4.2静态成员函数 181

8.5友元 182

8.5.1友元函数 183

8.5.2友元类 184

8.6常类型 185

8.6.1常引用 185

8.6.2常对象 185

8.6.3常数据成员 186

8.6.4常成员函数 187

8.7指向对象的指针、this指针和指向类成员指针 188

8.7.1指向对象的指针 188

8.7.2this指针 189

8.7.3指向数据成员的指针 190

8.7.4指向成员函数的指针 191

习题8 192

第9章 继承性和派生类 194

9.1派生类 194

9.1.1继承性的概念 194

9.1.2类的层次结构 194

9.1.3派生类的定义 195

9.1.4派生类的生成过程 196

9.2派生类的公有、私有和保护继承 197

9.2.1公有继承 197

9.2.2私有继承 198

9.2.3保护继承 200

9.3派生类的构造函数和析构函数 201

9.3.1派生类的构造函数 201

9.3.2派生类的析构函数 203

9.4赋值兼容问题 205

9.5对象族作用域 206

9.6类的嵌套 207

9.6.1局部类 207

9.6.2类的嵌套 208

习题9 210

第10章 多态性与虚函数 212

10.1多重继承下派生类成员的访问 212

10.1.1作用域分辨 212

10.1.2虚基类 214

10.1.3虚基类及其派生类的构造函数 216

10.2虚函数 217

10.2.1虚函数的声明及应用 217

10.2.2虚析构函数 218

10.3多态性 220

10.3.1多态性的分类 221

10.3.2编译时的多态性 221

10.3.3运行时的多态性 222

10.4纯虚函数和抽象类 224

10.4.1纯虚函数 224

10.4.2抽象类 225

习题10 227

第11章 函数和运算符的重载 229

11.1函数的重载 229

11.1.1函数重载的概念 229

11.1.2构造函数的重载 230

11.1.3函数重载的有关规定 231

11.2运算符重载的概念 231

11.2.1C++中可以重载的运算符 232

11.2.2运算符重载的格式 232

11.3单目运算符重载 233

11.3.1重载单目运算符的规则 233

11.3.2“++”运算符重载 233

11.4双目运算符重载 235

11.4.1运算符重载为类的成员函数 235

11.4.2运算符重载为类的友元函数 237

11.5其他运算符的重载 238

11.5.1返回对象的“++”运算符重载 238

11.5.2赋值运算符重载 239

11.5.3复合赋值运算符重载 241

11.5.4关系运算符的重载 242

习题11 243

第12章 模板 245

12.1模板的基本概念 245

12.1.1无约束类属机制 245

12.1.2约束类属机制 246

12.1.3C++中模板的分类 246

12.2函数模板 247

12.2.1函数模板的声明 247

12.2.2函数模板的应用 248

12.2.3函数模板的重载 250

12.2.4用户定义参数类型的函数模板 251

12.3类模板 253

12.3.1类模板的声明 253

12.3.2类模板的应用 253

习题12 256

第13章 预处理和异常处理 257

13.1C++的预处理 257

13.1.1宏定义 257

13.1.2文件包含 261

13.1.3条件编译 262

13.2C++多文件程序结构 264

13.3异常处理的基本概念 265

13.3.1异常处理的基本思想 265

13.3.2异常的传播方向 265

13.3.3异常处理的执行过程 266

13.4C++异常处理的实现 266

13.4.1C++的异常类 266

13.4.2C++的try和catch的语句 266

13.4.3C++的throw语句 268

13.5异常处理中的构造函数和析构函数 269

习题13 270

第14章 流和文件 272

14.1流及流类库的层次结构 272

14.2输出流及常用的成员函数 273

14.2.1标准设备流对象 274

14.2.2cout流对象、插入操纵符和控制格式 274

14.2.3put和write成员函数 277

14.3输入流及常用的成员函数 278

14.3.1cin流对象和提取操纵符 278

14.3.2get和getline成员函数 279

14.3.3read成员函数 280

14.4文件的打开与关闭 281

14.4.1文件的打开 281

14.4.2文件的关闭 282

14.5文本文件的读/写 282

14.6二进制文件的读/写 284

14.7文件的随机读/写 286

习题14 289

附录A C++语言运算符的优先级和结合性 290

附录B ASCII码表 291

参考文献 292