《C++:面向对象程序设计》PDF下载

  • 购买积分:13 如何计算积分?
  • 作  者:李涛主编;游洪跃,陈良银,李琳编
  • 出 版 社:北京:高等教育出版社
  • 出版年份:2006
  • ISBN:7040191229
  • 页数:399 页
图书介绍:本书全面系统地介绍了面向对象程序设计的基本原理和要素,详细介绍了C++程序设计技术,并在此基础上对VC++的程序设计技术等内容进行了重点介绍。本书将C++的基本原理与具体实践相结合,使读者不仅对C++语言本身有深入的了解,同时为读者迅速掌握目前流行的C++程序设计工具打下良好的基础。本书取材新颖,内容丰富,可读性强,所设计的示例程序立足于方便各位读者观察C++的各机制的运行过程。本书可作为高等学校计算机、信息技术类本科生、研究生教材,亦可供上述领域专业科研人员自学参考使用。

第1章 绪论 1

1.1 程序设计语言发展概况 1

1.1.1 机器语言和汇编语言 1

1.1.2 高级语言 2

1.2 面向对象程序设计语言基本原理 3

1.2.1 抽象 4

1.2.2 封装性 6

1.2.3 继承性 7

1.2.4 多态性 8

1.2.5 消息传递机制 10

1.3 面向对象程序设计C+++ 11

1.3.1 C++语言特点 11

1.3.2 C++程序架构 13

1.3.3 C++程序开发过程 17

1.3.4 C++语言在商业领域的应用 17

习题1 18

第2章 C++类和对象 19

2.1 类 19

2.1.1 类的定义 19

2.1.2 类成员的访问权限 20

2.1.3 成员函数的实现 24

2.2 类对象 29

2.2.1 构造函数 30

2.2.2 析构函数 39

2.2.3 对象成员的访问 42

2.3 C++输入/输出流对象 64

2.3.1 标准输入/输出流 64

2.3.2 文件输入/输出流 68

2.3.3 输入/输出流应用举例 73

习题2 76

第3章 继承 77

3.1 类的继承与派生 77

3.1.1 继承与派生实例 77

3.1.2 派生类定义 78

3.1.3 继承的级别 81

3.2 继承方式 81

3.2.1 公有继承 82

3.2.2 私有继承 85

3.2.3 保护继承 87

3.2.4 多继承 91

3.3 派生类的构造函数和析构函数 92

3.3.1 构造函数 92

3.3.2 析构函数 95

3.4 虚基类 97

3.4.1 声明一个虚基类 97

3.4.2 虚基类的初始化 102

3.5 聚合类 105

3.5.1 聚合类的概念 105

3.5.2 聚合类中的构造函数 106

3.6 继承应用实例 112

3.6.1 问题描述 112

3.6.2 完整源程序 113

3.6.3 运行结果 120

习题3 122

第4章 多态性 125

4.1 多态性基本概念及其实现方式 125

4.1.1 多态性基本概念 125

4.1.2 多态性的两种实现方式 125

4.2 虚函数 126

4.2.1 虚函数的基本概念及其定义 126

4.2.2 虚函数与重载函数的关系 137

4.2.3 虚函数与函数隐藏和函数覆盖 137

4.2.4 多重继承中的虚函数 141

4.2.5 将析构函数设计为虚函数 147

4.2.6 纯虚函数和抽象类 149

4.2.7 抽象类的程序设计举例 150

4.3 函数重载 155

4.3.1 在同一个类中的成员函数重载 155

4.3.2 全局函数重载 158

4.3.3 函数默认参数及重载二义性 160

4.4 运算符重载 161

4.4.1 运算符的两种重载方式 162

4.4.2 单目和双目运算符的重载 164

4.4.3 几个常用运算符的重载举例 171

4.4.4 运算符重载综合举例 175

习题4 187

第5章 模板 188

5.1 模板的基本概念 188

5.1.1 模板的概念 188

5.1.2 为何需要使用模板 188

5.2 函数模板及模板函数 189

5.2.1 函数模板的定义及生成模板函数 190

5.2.2 重载函数模板 192

5.3 类模板及模板类 197

5.3.1 类模板的定义及生成模板类 199

5.3.2 类模板的派生 203

5.4 模板设计应用实例 204

习题5 210

第6章 C++常见问题 211

6.1 内联函数的使用 211

6.1.1 内联函数引入的原因 211

6.1.2 内联函数的定义 211

6.1.3 内联和非内联函数的选择使用 213

6.2 const的使用 216

6.2.1 const说明值常量 217

6.2.2 const与指针 218

6.2.3 const说明函数参数和返回值 220

6.2.4 类中的const 221

6.3 动态内存管理技术 226

6.3.1 内存的几种分配方式 226

6.3.2 使用new和delete分配和释放动态内存 227

6.3.3 常见的动态内存错误 233

6.3.4 指针和数组的对比 234

6.3.5 利用指针传递内存的方式 236

6.3.6 delete的作用 239

6.4 使用引用 241

6.4.1 引用类型 242

6.4.2 独立引用 243

6.4.3 引用作为函数参数 245

6.4.4 引用返回值 247

6.4.5 常引用 249

6.4.6 引用的应用实例 249

6.5 类型转换 250

6.5.1 构造函数和类型转换函数 250

6.5.2 一个类型转换实例 253

6.6 异常处理 256

6.6.1 C语言的出错处理 257

6.6.2 抛出异常 258

6.6.3 捕获异常 258

6.6.4 处理异常 258

6.6.5 异常的匹配 259

6.6.6 标准异常 259

6.6.7 异常开销 260

6.6.8 含有异常的典型程序设计 260

6.7 命名空间 262

6.7.1 命名空间的意义 262

6.7.2 使用命名空间 262

6.7.3 无名的命名空间 263

6.7.4 一个应用实例 263

习题6 265

第7章 Visual C++编程基础 266

7.1 Windows程序运行机制 266

7.1.1 Windows中的事件驱动与消息循环 266

7.1.2 消息和消息处理 267

7.1.3 消息映像机制 268

7.2 Windows API编程 268

7.2.1 API和SDK 268

7.2.2 Windows API应用程序的组成 269

7.2.3 API程序实例 271

7.3 MFC编程 277

7.3.1 MFC简介 277

7.3.2 MFC的主要类 278

7.3.3 MFC的消息与消息处理方法 281

7.3.4 Appwizard与Class Wizard 285

习题7 299

第8章 对话框、常用消息、菜单和工具栏 300

8.1 对话框 300

8.1.1 对话框基本概念 300

8.1.2 常用控件 300

8.1.3 应用实例 312

8.2 常用消息 318

8.2.1 键盘消息及键盘消息的处理 318

8.2.2 鼠标消息及鼠标消息的处理 329

8.2.3 控件常用消息 339

8.3 菜单和工具栏 340

8.3.1 菜单 340

8.3.2 工具栏 343

8.3.3 综合实例 344

习题8 352

第9章 单文档界面和多文档界面 353

9.1 文档对象和视图对象 353

9.1.1 文档对象 353

9.1.2 视图对象 353

9.1.3 文档和视图的关系 353

9.2 单文档界面 353

9.2.1 单文档界面简介 353

9.2.2 单文档界面实例 354

9.3 多文档界面 357

9.3.1 多文档界面简介 357

9.3.2 多文档界面简单实例 357

习题9 360

第10章 图形设备接口 361

10.1 CDC类 361

10.1.1 CDC类的绘图函数 361

10.1.2 CPaintDC类 362

10.1.3 CClientDC类 364

10.1.4 CWindowDC类 365

10.2 图形对象 365

10.2.1 CPen类 366

10.2.2 CBrush类 367

10.2.3 CFont类 369

10.3 应用CDC实例 373

习题10 383

附录 C++编程风格指导 384

参考文献 398