图书目录

目录

第1章绪论1

1.1C++简介1

1.2面向对象与面向过程2

1.3C++对面向对象的支持3

1.4C++的新特性3

1.5小结6

习题6

第2章C++程序设计基础7

2.1认识C++程序7

2.1.1C++程序实例7

2.1.2字符集8

2.1.3词法记号8

2.1.4VC 6.0开发环境简介10

2.2基本数据类型和表达式13

2.2.1基本数据类型14

2.2.2常量15

2.2.3变量16

2.2.4运算符与表达式17

2.2.5语句20

2.3数据的输入输出21

2.3.1基本概念22

2.3.2C++输入输出示例22

2.4基本控制结构27

2.4.1用if语句实现选择结构27

2.4.2多重选择结构28

2.4.3循环结构31

2.4.4break和continue语句35

2.4.5程序举例36C++语言程序设计目录2.5自定义数据类型37

2.5.1typedef声明37

2.5.2枚举类型37

2.5.3结构体类型38

2.5.4联合体类型40

2.6小结41

习题41

第3章函数45

3.1函数的定义与使用45

3.1.1函数的定义45

3.1.2函数的参数传递46

3.1.3引用参数47

3.1.4函数的返回值48

3.1.5函数调用形式49

3.2内联函数51

3.3带默认形参值的函数52

3.4重载函数54

3.5C++系统函数56

3.6知识扩展58

3.6.1递归函数执行过程58

3.6.2C/C++存储分配60

3.7小结60

习题61

第4章类与对象62

4.1面向对象的基本概念62

4.1.1抽象62

4.1.2封装63

4.1.3继承63

4.1.4多态64

4.2类和对象的定义64

4.2.1类的定义64

4.2.2对象的定义66

4.3构造函数和析构函数67

4.3.1构造函数67

4.3.2析构函数69

4.3.3拷贝构造函数70

4.4类的组合73

4.4.1组合73

4.4.2前向引用声明75

4.5知识扩展76

4.5.1class与struct76

4.5.2非public构造函数78

4.6小结81

习题81

第5章数据的共享与保护82

5.1标识符的作用域与可见性82

5.1.1作用域82

5.1.2可见性85

5.2对象的存储类型与生存期86

5.3类的静态成员88

5.3.1静态数据成员88

5.3.2静态函数成员90

5.4类的友元92

5.4.1友元函数92

5.4.2友元类93

5.5共享数据的保护94

5.5.1常对象95

5.5.2用const修饰的类成员95

5.5.3常引用101

5.6多文件结构和编译预处理命令103

5.6.1C++程序的一般组织结构103

5.6.2外部变量与外部函数106

5.6.3编译预处理108

5.7小结112

习题113

第6章数组、指针与字符串114

6.1数组114

6.1.1数组的声明与使用114

6.1.2数组的存储与初始化116

6.1.3数组作为函数的参数118

6.1.4对象数组120

6.1.5程序实例122

6.2指针123

6.2.1内存空间的访问方式123

6.2.2指针变量的声明124

6.2.3指针的赋值125

6.2.4指针运算126

6.2.5用指针处理数组元素129

6.2.6指针数组133

6.2.7用指针作为函数的参数134

6.2.8指针型函数136

6.2.9指向函数的指针136

6.2.10对象指针138

6.3动态内存分配140

6.4深复制与浅复制142

6.5字符串145

6.5.1用字符数组存储和处理字符串145

6.5.2string类147

6.6综合实例148

6.7知识扩展150

6.7.1指向指针的指针150

6.7.2指针与const 限定符151

6.8小结153

习题153

第7章继承与派生155

7.1继承与派生的基本概念155

7.2单继承158

7.3类的保护成员161

7.4访问权限和类型兼容规则163

7.4.1公有派生和类型兼容规则165

7.4.2保护派生167

7.4.3私有派生169

7.5多继承170

7.6构造函数和析构函数171

7.7多继承中的二义性问题176

7.7.1作用域分辨操作符与支配规则177

7.7.2虚继承与虚基类178

7.7.3虚基类成员的构造和析构181

7.8知识扩展187

7.9小结188

习题189

第8章多态191

8.1多态概述191

8.2运算符重载191

8.2.1运算符重载的机制192

8.2.2运算符重载的规则192

8.2.3重载为类的非成员函数(通常是友元函数)192

8.2.4重载为类的成员函数195

8.2.5其他运算符重载示例197

8.3虚函数200

8.3.1静态联编与动态联编200

8.3.2一般虚函数成员203

8.3.3虚析构函数204

8.4纯虚函数和抽象类206

8.4.1纯虚函数206

8.4.2抽象类206

8.4.3抽象类的意义208

8.5知识扩展210

8.5.1dynamic_cast安全向下转型210

8.5.2用typeid获取运行时类型信息212

8.6小结215

习题215

第9章流类库与输入输出217

9.1I/O流的概念及流类库结构217

9.1.1I/O流的概念217

9.1.2流类库结构218

9.2输出流219

9.2.1插入运算符和操纵符219

9.2.2文件输出流223

9.2.3二进制输出文件227

9.2.4字符串输出流228

9.3输入流229

9.3.1使用提取运算符229

9.3.2文件输入流229

9.3.3输入流相关函数229

9.3.4字符串输入流231

9.4输入输出流232

9.5综合实例232

9.6知识扩展237

9.6.1重载输出运算符237

9.6.2重载输入运算符238

9.7小结240

习题240

第10章异常处理242

10.1异常处理的一个简单程序242

10.2异常处理机制243

10.2.1异常243

10.2.2异常处理的任务244

10.2.3异常处理的机制244

10.2.4多个catch结构247

10.3自定义异常类248

10.4C++标准异常类249

10.5综合实例250

10.6知识扩展251

10.6.1异常处理中对象的构造和析构251

10.6.2重抛异常253

10.7小结254

习题254

第11章MFC简介257

11.1MFC的主要特征257

11.1.1封装258

11.1.2继承258

11.1.3虚拟函数和动态约束258

11.1.4MFC的宏观框架体系259

11.2MFC和Win32259

11.3CObject类261

11.3.1CObject类的定义261

11.3.2CObject类的特性262

11.4MFC中的消息映射264

11.4.1消息的分类264

11.4.2消息结构和消息处理264

11.4.3消息映射的定义266

11.4.4MFC消息映射的实现方法267

11.4.5消息映射的相关宏267

11.4.6消息映射声明268

11.4.7消息映射实现270

11.4.8消息映射宏271

11.5MFC窗口过程273

11.5.1MFC窗口过程的指定273

11.5.2对Windows消息的接收和处理273

11.5.3对命令消息的接收和处理273

11.5.4对控制通知消息的接收和处理273

11.6对象创建274

11.6.1对象创建与相互关系274

11.6.2MFC提供的接口275

11.7小结275

习题275

第12章MFC绘图基础276

12.1绘图相关的概念276

12.1.1图形设备接口CDC276

12.1.2图形对象类277

12.2常用绘图函数278

12.3动画制作283

12.4绘图实例293

12.5小结297

习题298

第13章课程设计299

13.1C++设计模式299

13.1.1课程设计的目的和意义299

13.1.2课程设计的基本要求299

13.1.3课程设计的技术要点300

13.1.4Factory模式简介300

13.1.5Singleton模式303

13.1.6设计模式报告基本格式305

13.2人事管理系统305

13.2.1人事管理系统设计的目的和意义306

13.2.2人事管理系统设计的基本要求306

13.2.3人事管理系统设计技术要点306

13.2.4人事管理系统开发步骤简介306

13.2.5人事管理系统报告基本格式320

13.3坦克大战游戏321

13.3.1坦克大战游戏设计的目的和意义321

13.3.2坦克大战游戏设计的基本要求322

13.3.3坦克大战游戏设计的技术要点322

13.3.4坦克大战游戏报告基本格式345

13.4贪吃蛇游戏346

13.4.1贪吃蛇游戏设计的目的和意义346

13.4.2贪吃蛇游戏设计的基本要求347

13.4.3贪吃蛇游戏设计的技术要点347

13.4.4贪吃蛇游戏报告基本格式355

13.5五子棋游戏356

13.5.1五子棋游戏设计的目的和意义356

13.5.2五子棋游戏设计的基本要求356

13.5.3五子棋游戏设计的技术要点357

13.5.4五子棋游戏报告基本格式362

参考文献363