《计算机系列教材普通高等教育十一五国家级规划教材 C++语言程序设计教程》PDF下载

  • 购买积分:13 如何计算积分?
  • 作  者:赵海廷,周方,胡雯,彭莉,邓谦
  • 出 版 社:北京:清华大学出版社
  • 出版年份:2014
  • ISBN:9787302363682
  • 页数:380 页
图书介绍:C++语言程序设计类教材在国际国内已有不少,但多数是为讲语言而将语言,以死抠语法居多,虽然语法知识教授的非常清楚详细,但对于学生尽快进入IT职场帮助不大。本书利用案例详细介绍了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 面向对象方法与软件的集成 5

1.2.4 面向对象程序设计的特点 5

1.3 对象的相互关系及其特性 8

1.3.1 对象的属性 9

1.3.2 对象的相互关系 9

1.3.3 资源的可重用性 10

1.3.4 功能的可扩展性 10

1.3.5 系统的可管理性 11

1.4 面向对象系统的开发过程 11

1.4.1 面向对象系统的分析方法 11

1.4.2 面向对象系统的设计方法 12

1.4.3 面向对象系统的实现方法 12

1.5 C++语言的特点及程序的开发过程 12

1.5.1 C++语言的特点 13

1.5.2 C++程序的开发过程 14

1.6 C++程序的结构 14

1.6.1 简单的C++程序 14

1.6.2 C++程序的基本结构 15

1.6.3 C++程序的书写格式和注释 16

1.7 Visual C++6.0开发环境 17

1.7.1 Visual C++6.0集成开发环境简介 17

1.7.2 Visual C++6.0程序的开发流程 18

1.8 本章小结 23

习题1 24

第2章 数据类型和简单输入输出方法 26

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

2.1.1 C++的字符集 26

2.1.2 C++的保留字 26

2.1.3 C++的标识符 27

2.2 整型数据、布尔型和void 27

2.2.1 整型常量 28

2.2.2 整型变量 29

2.2.3 布尔型和void型 31

2.3 字符型数据 32

2.3.1 字符型常量 32

2.3.2 字符型变量 32

2.3.3 字符串常量 33

2.3.4 换码序列 34

2.3.5 符号常量和常数型变量 35

2.4 实型数据 36

2.4.1 单精度型常量和变量 36

2.4.2 双精度型常量和变量 37

2.4.3 长双精度型常量和变量 38

2.5 运算符的优先级和结合性 38

2.6 数据类型的转换 38

2.6.1 数据类型的自动转换 39

2.6.2 数据类型的强制转换 40

2.6.3 变量的初始化 41

2.7 数据的输出、输入方法 42

2.7.1 数据的输出 42

2.7.2 数据的输入 43

2.7.3 简单的I/O格式控制 43

2.8 本章小结 46

习题2 46

第3章 运算符和表达式 49

3.1 初等表达式、赋值运算符及表达式 49

3.1.1 初等表达式 49

3.1.2 赋值运算符及其表达式 50

3.2 算术、关系运算符及其表达式 51

3.2.1 算术运算符及其表达式 51

3.2.2 关系运算符及其表达式 53

3.3 逻辑、位逻辑运算符及其表达式 55

3.3.1 逻辑运算符及其表达式 55

3.3.2 位逻辑运算符及其表达式 58

3.3.3 移位运算符及表达式 60

3.4 增1、减1、自反运算符及其表达式 63

3.4.1 增1、减1运算符及其表达式 63

3.4.2 自反运算符及其表达式 65

3.5 逗号、其他运算符及其表达式 66

3.5.1 逗号运算符及其表达式 66

3.5.2 其他运算符及表达式 68

3.6 综合应用举例 69

3.7 本章小结 71

习题3 71

第4章 顺序和选择结构语句 73

4.1 程序设计概述和N-S图简介 73

4.1.1 程序设计概述 73

4.1.2 N-S图简介 74

4.2 顺序语句及其程序设计 75

4.2.1 说明语句和表达式语句 75

4.2.2 复合语句、分程序和空语句 76

4.2.3 顺序结构程序设计举例 77

4.3 if-else语句 78

4.3.1 条件运算符及其表达式 78

4.3.2 if语句 80

4.3.3 if-else语句 81

4.3.4 else if结构 84

4.4 switch()语句 85

4.5 选择结构程序设计举例 88

4.6 本章小结 93

习题4 93

第5章 循环和其他控制语句 98

5.1 while()语句 98

5.2 for()语句 100

5.3 do-while()语句 101

5.4 几种循环的比较 103

5.5 循环的嵌套 104

5.6 break、continue和goto语句 106

5.6.1 break语句 106

5.6.2 continue语句 107

5.6.3 goto语句 108

5.7 程序设计举例 110

5.8 本章小结 114

习题5 115

第6章 数组 122

6.1 一维数组 122

6.1.1 一维数组的定义 122

6.1.2 一维数组元素的引用 124

6.1.3 一维数组的初始化 125

6.1.4 一维数组程序举例 126

6.2 字符数组 127

6.2.1 字符数组的定义 128

6.2.2 字符数组元素的输入与输出 128

6.2.3 字符数组的初始化 130

6.2.4 字符串、字符数组的输入输 131

6.2.5 字符数组程序举例 133

6.3 多维数组 134

6.3.1 多维数组的定义 134

6.3.2 多维数组元素的引用 135

6.3.3 多维数组的初始化 136

6.3.4 多维数组应用举例 137

6.4 数组应用举例 139

6.5 本章小结 142

习题6 144

第7章 函数和变量的生命期与作用域 147

7.1 函数的定义、说明和调用 147

7.1.1 return语句 147

7.1.2 函数的定义 148

7.1.3 函数说明 149

7.1.4 函数调用 150

7.2 函数间的数据传递 151

7.2.1 函数间的数值传递 151

7.2.2 函数间的地址传递 152

7.2.3 函数间的引用传递 153

7.2.4 全局变量传递函数处理结果 154

7.2.5 利用指针、引用返回函数处理的结果 155

7.3 函数的嵌套调用与递归调用 159

7.3.1 函数的嵌套调用 159

7.3.2 函数的递归调用 160

7.4 内联函数 163

7.4.1 内联函数的格式及应用 163

7.4.2 内联函数要注意的问题 163

7.5 带默认参数的函数 164

7.5.1 带默认参数的函数应用 164

7.5.2 调用默认参数函数应注意的问题 165

7.6 变量的生存期、作用域和命名空间 165

7.6.1 变量的生存期 165

7.6.2 变量的作用域 167

7.6.3 命名空间 168

7.7 本章小结 171

习题7 172

第8章 指针 176

8.1 指针变量的定义和初始化 176

8.1.1 指针与指针的目标变量 176

8.1.2 指针变量的定义与初始化 178

8.1.3 近程和远程指针 180

8.2 指针运算 181

8.2.1 指针的一般运算 182

8.2.2 指针的算术运算 182

8.2.3 指针的关系运算 184

8.3 指针与数组、指针数组 186

8.3.1 指针与数组 186

8.3.2 指针数组 189

8.4 指向数组的指针与多级指针 193

8.4.1 指向数组的指针 193

8.4.2 多级指针 195

8.5 指针与函数 197

8.5.1 作为函数参数的指针 197

8.5.2 指针型函数 198

8.5.3 指向函数的指针 201

8.6 引用与命令行行参数 204

8.6.1 引用的定义 204

8.6.2 引用与函数 205

8.6.3 命令行参数 207

8.7 本章小结 208

习题8 209

第9章 结构体、联合体和枚举 213

9.1 结构体 213

9.1.1 结构体类型说明和结构体变量定义 213

9.1.2 结构体变量的初始化和成员的引用 216

9.1.3 结构体数组和指向结构体的指针 217

9.1.4 结构体和函数 219

9.1.5 结构体型函数和结构体指针型函数 220

9.1.6 结构体嵌套和位域结构体 223

9.2 联合体 226

9.2.1 联合体类型的说明与联合体变量的定义 226

9.2.2 联合体变量与结构体变量的比较 227

9.2.3 结构体中嵌套联合体 228

9.2.4 联合体中嵌套位域结构体 231

9.3 枚举 232

9.3.1 枚举类型的说明与变量的定义 232

9.3.2 枚举的应用 234

9.4 用typedef定义数据类型 235

9.5 本章小结 236

习题9 238

第10章 类和对象 241

10.1 类和对象 241

10.1.1 类的说明 241

10.1.2 类的数据成员和成员函数 242

10.1.3 类成员的访问控制 243

10.1.4 对象定义及成员的表示方法 244

10.1.5 动态内存的申请与释放 245

10.2 构造函数和析构函数 246

10.2.1 构造函数 247

10.2.2 拷贝构造函数 247

10.2.3 析构函数 250

10.3 类的静态成员 251

10.3.1 静态数据成员 252

10.3.2 静态成员函数 253

10.4 友元 254

10.4.1 友元函数 254

10.4.2 友元类 255

10.5 常类型 256

10.5.1 常引用 256

10.5.2 常对象 257

10.5.3 常数据成员 258

10.5.4 常成员函数 259

10.6 指向对象、类成员和this指针 260

10.6.1 指向对象的指针 260

10.6.2 指向数据成员的指针 261

10.6.3 指向成员函数的指针 262

10.6.4 this指针 263

10.7 本章小结 264

习题10 266

第11章 继承性和派生类 269

11.1 派生类 269

11.1.1 继承性的概念 269

11.1.2 类的层次结构 270

11.1.3 派生类的定义 270

11.1.4 派生类的生成过程 271

11.2 派生类的公有、私有和保护继承 272

11.2.1 公有继承 272

11.2.2 私有继承 274

11.2.3 保护继承 276

11.3 派生类的构造函数和析构函数 277

11.3.1 派生类的构造函数 277

11.3.2 派生类的析构函数 279

11.4 赋值兼容问题 281

11.5 对象族作用域 282

11.6 类的嵌套 283

11.6.1 局部类 283

11.6.2 类的嵌套 284

11.7 本章小结 287

习题11 288

第12章 多态性和虚函数 290

12.1 多重继承下派生类成员的访问 290

12.1.1 作用域分辨 290

12.1.2 虚基类 293

12.1.3 虚基类及其派生类的构造函数 294

12.2 虚函数 295

12.2.1 虚函数的声明及应用 295

12.2.2 虚析构函数 297

12.3 多态性 299

12.3.1 多态性的分类 299

12.3.2 编译时的多态性 299

12.3.3 运行时的多态性 301

12.4 纯虚函数和抽象类 302

12.4.1 纯虚函数 302

12.4.2 抽象类 304

12.5 本章小结 305

习题12 306

第13章 函数和运算符的重载 308

13.1 函数的重载 308

13.1.1 函数重载的概念 308

13.1.2 构造函数的重载 309

13.1.3 函数重载的有关规定 310

13.2 运算符重载 311

13.2.1 C++中可以重载的运算符 311

13.2.2 运算符重载的格式 312

13.3 单目运算符重载 312

13.3.1 重载单目运算符的规则 312

13.3.2 ++运算符重载 313

13.4 双目运算符的重载 315

13.4.1 运算符重载为类的成员函数 315

13.4.2 运算符重载为类的友元函数 316

13.5 其他运算符的重载 317

13.5.1 返回对象的++运算符重载 317

13.5.2 赋值运算符重载 319

13.5.3 复合赋值运算符重载 321

13.5.4 关系运算符的重载 322

13.6 本章小结 323

习题13 324

第14章 模板 325

14.1 模板的基本概念 325

14.1.1 无约束类属机制 325

14.1.2 约束类属机制 326

14.1.3 C++中模板的分类 327

14.2 函数模板 327

14.2.1 函数模板的声明 327

14.2.2 函数模板的应用 329

14.2.3 函数模板的重载 331

14.2.4 用户定义参数类型的函数模板 332

14.3 类模板 333

14.3.1 类模板的声明 334

14.3.2 类模板的应用 334

14.4 本章小结 337

习题14 338

第15章 流和文件 339

15.1 流及流类库的层次结构 339

15.2 输出流及常用的成员函数 341

15.2.1 标准设备流对象 341

15.2.2 cout流对象、插入操纵符和控制格式 342

15.2.3 put和write成员函数 344

15.3 输入流及常用的成员函数 345

15.3.1 cin流对象和提取操纵符 346

15.3.2 get和getline成员函数 346

15.3.3 read成员函数 348

15.4 文件的打开与关闭 348

15.4.1 文件的打开 348

15.4.2 文件的关闭 350

15.5 文本文件的读写 350

15.6 二进制文件的读写 352

15.7 文件的随机读写 354

15.8 本章小结 356

习题15 358

第16章 预处理和异常处理 360

16.1 C++的预处理 360

16.1.1 宏定义 361

16.1.2 文件包含 364

16.1.3 条件编译 366

16.2 C++多文件程序结构 368

16.3 异常处理的基本概念 369

16.3.1 异常处理的基本思想 369

16.3.2 异常的传播方 369

16.3.3 异常处理的执行过程 370

16.4 C++异常处理的实现 370

16.4.1 C+4的异常类 370

16.4.2 C+4的try和catch的语 371

16.4.3 C+4的throw语句 372

16.5 异常处理中的构造函数和析构函数 373

16.6 本章小结 375

习题16 377

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

附录B ASCⅡ码表 379

参考文献 380