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

  • 购买积分:14 如何计算积分?
  • 作  者:吴乃陵等编著
  • 出 版 社:北京:高等教育出版社
  • 出版年份:2003
  • ISBN:7040123010
  • 页数:448 页
图书介绍:本书是教育部21世纪初高等理工科教育教学改革项目“电子与电气信息类专业人才培养改革成果的整合与深化”的研究成果。本书对教学方法作了改革,直接讲授面向对象的C++程序设计,并突出学生编程能力的培养。

目 录 1

第一章软件设计概论 1

1.1 软件与软件危机 1

1.2软件工程 2

1.3程序设计方法 3

1.3.1 传统的结构化程序设计 3

1.3.2面向对象的程序设计 5

1.4算法设计与分析 8

1.4.1算法的概念 8

1.4.2算法的表示 8

1.4.3常用算法介绍 11

1.5C语言和面向对象的C++ 13

1.6一个简单的C++程序 14

习题 16

第二章C++基础知识 17

2.1 C++的词法单位 17

2.1.1 C++的字符集 17

2.1.2关键字 17

2.1.3标识符 18

2.1.4标点符号 19

2.2 C++中的数据类型 19

2.3变量和常量 21

2.3.1 变量 21

2.3.2字面常量 23

2.3.3常变量 25

2.4数组与字符数组 26

2.4.1 数组 26

2.4.2字符数组 27

2.5运算符、表达式和语句 28

2.5.1运算符、优先级和结合性 28

2.5.2表达式 35

2.5.3 算术类型转换和赋值类型 38

转换 38

2.5.4强制类型转换运算符 39

2.5.5求值次序与副作用 40

2.5.6语句 40

2.6简单的输入/输出 41

2.6.1 C++的输入/输出 41

2.6.2 C语言的输入/输出 46

习题 47

3.1.1 if语句 49

3.1 分支结构程序设计 49

第三章基本控制结构程序设计 49

3.1.2条件运算符“?:” 55

3.1.3 switch 语句 55

3.2循环结构程序设计 58

3.2.1 while语句 58

3.2.2 do-while语句 59

3.2.3 for语句 62

3.2.4循环的嵌套 64

3.3转向语句 65

3.4常用算法应用实例 68

3.5枚举类型 72

3.5.1枚举类型的定义 72

3.5.2枚举变量的使用 73

3.6输入/输出文件简介 75

习题 77

4.1 函数的定义与调用 80

4.1.1 函数概述 80

第四章函数 80

4.1.2函数的定义 81

4.1.3函数的调用 83

4.2 函数的参数传递、返回值及函数原型说明 84

4.2.1 函数的参数传递及传值调用 84

4.2.2函数返回值 85

4.2.3函数原型说明 87

4.3全局变量和局部变量 89

4.3.1 变量的存储机制与C++的 89

内存布局 89

4.3.2全局变量 90

4.4函数调用机制 91

4.3.3局部变量 91

4.5作用域与存储类型 93

4.5.1作用域 93

4.5.2变量的存储类型 96

4.5.3外部存储类型与静态存储 98

类型 98

4.5.4生命期与可见性 99

4.6函数的递归调用 101

4.7函数的一些高级议题 107

4.7.1函数重载 107

4.7.2缺省参数 108

4.7.3内联函数 109

4.9.1 头文件 110

4.9头文件与多文件结构 110

4.8 C++的系统库函数 110

4.9.2多文件结构 111

4.10编译预处理 112

4.10.1宏定义指令 112

4.10.2文件包含指令 113

4.10.3条件编译指令 114

习题 115

第五章类与对象 120

5.1类与对象的基本概念 120

5.1.1 C++类的定义 120

5.1.2成员函数的定义 122

5.1.3对象的创建与使用 123

5.1.4名字空间域和类域 126

5.2从面向过程到面向对象 130

5.3引用 133

5.4构造函数和析构函数 136

5.4.1 构造函数的定义与使用 136

5.4.2拷贝构造函数 138

5.4.3折构函数的定义 140

5.4.4成员对象与构造函数 140

5.5运算符的重载 145

5.6友元 150

5.7静态成员 155

5.7.1静态数据 155

5.7.2静态函数成员 156

5.8结构和联合 157

5.9全局对象与类接口 160

5.10.1 面向对象程序的组织与Windows下的实现 161

编程 161

5.10面向对象程序设计和Windows 161

5.10.2传统的Windows编程 164

5.10.3 MFC编程 166

5.11 图书馆流通管理系统设计 168

——对象与类的识别 168

习题 177

第六章指针与数组 180

6.1指针与地址 180

6.1.1指针的概念 180

6.1.2指针变量的赋值、初始化与 181

简单应用 181

6.2 this指针 185

6.3.1数组与数组元素 186

6.3数组与指针 186

6.3.2数组名、指针和指针运算 189

6.3.3指针、数组名作为函数参数 191

6.3.4字符串处理 193

6.4多维数组与指针 197

6.4.1多维数组 197

6.4.2指向多维数组的指针 201

6.5模板 204

6.5.1 函数模板及应用 204

6.5.2类模板与线性表 207

6.6排序与查找 213

6.6.1常用查找方法 213

6.6.2常用的排序法 219

6.7指针数组 224

6.8 数指针及其应用 225

6.9复杂指针及其他 229

6.10 Windows对象句柄 230

6.11 图书馆流通管理系统设计 232

——改进类的封装 232

习题 236

第七章动态内存分配 241

7.1堆内存分配 241

7.1.1 堆内存的分配与释放 242

7.1.2堆对象与构造函数 246

7.1.3浅拷贝与深拷贝 247

7.2链表与链表的基本操作 250

7.2.1单链表基本算法 250

7.2.2单链表类型模板 255

7.2.3双向链表 259

7.3栈与队列的基本操作及其应用 263

7.3.1栈与应用 263

7.3.2队列 271

7.4二 叉 树 275

7.4.1二叉树的概念 276

7.4.2二叉树的遍历 278

7.4.3 二叉排序树 282

7.5 MFC对象和Windows对象的关系 283

7.6图书馆流通管理系统设计 285

——链表类应用 285

习题 290

第八章继承与多态 292

8.1 继承与派生的概念 292

8.1.1类的派生与继承 293

8.1.2公有派生与私有派生 295

8.2 派生类的构造函数与析构函数 296

8.3 多重继承与派生类成员标识 302

8.4虚基类 306

8.5派生类应用讨论 313

8.6 MFC基础类及其层次结构 317

8.7 多态性与虚函数 320

8.7.1虚函数的定义 321

8.7.2 纯虚函数 325

8.7.3动态联编 335

8.8 MFC的消息映射与命令传递 336

8.9 图书馆流通管理系统设计 341

——继承与多态的应用 341

习题 348

9.1C++的基本流类体系 352

第九章流类库和输入/输出 352

9.2输入/输出的格式控制 355

9.3标准设备的输入/输出 360

9.4文件的输入/输出 365

9.4.1文件的打开/关闭 366

9.4.2 文本文件的读写 368

9.4.3二进制文件的读写 372

9.4.4文件的随机访问 375

9.4.5文件与对象 377

9.5字符串流(内存流) 378

9.6 MFC中的文件处理 379

9.6.1文档/视图结构 379

9.6.2存档类序列化 380

——输入/输出流的应用 381

9.7 图书馆流通管理系统设计 381

习题 387

第十章异常处理 390

10.1异常的概念 390

10.2 常处理的机制 391

10.3栈展开与异常捕获 393

10.4异常的重新抛出和catch_all 397

子句 397

10.5异常规范 398

10.6异常和继承 401

10.7 C++标准库的异常类层次结构 405

习题 409

第十一章标准模板库(STL) 410

11.1标准模板库简介 410

11.2 迭代子类 414

11.3 顺序容器 420

11.4关联容器 422

11.5容器适配器 423

11.6 泛型算法与函数对象 425

11.6.1 函数对象 425

11.6.2泛型算法 429

11.7 VC++中的STL 431

习题 432

附录 433

附录一 ASCⅡ(美国标准信息交换码)字符表 433

附录二C语言的部分标准库函数 434

及头文件 434

附录三标准模板库容器类成员函数与泛型算法 438

参考文献 448