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

  • 购买积分:12 如何计算积分?
  • 作  者:陈维兴,林小茶编著
  • 出 版 社:北京:清华大学出版社
  • 出版年份:2009
  • ISBN:9787302200079
  • 页数:340 页
图书介绍:本书是为具有C语言基础的读者编写的,主要介绍C++面向对象程序设计的基本知识和编程方法,全面地讲述了C++面向对象的基本特征。

第1章 面向对象程序设计概述 1

1.1什么是面向对象程序设计 1

1.1.1一种新的程序设计范型 1

1.1.2面向对象程序设计的基本概念 2

1.1.3面向对象程序设计的基本特征 4

1.2为什么要使用面向对象程序设计 8

1.2.1传统程序设计方法的局限性 8

1.2.2面向对象程序设计方法的主要优点 9

1.3面向对象程序设计的语言 11

1.3.1面向对象程序设计语言的发展概况 11

1.3.2几种典型的面向对象程序设计语言 12

习题 13

第2章 C++概述 14

2.1 C++的起源和特点 14

2.1.1 C++的起源 14

2.1.2 C++语言的特点 15

2.2 C++源程序的构成 15

2.2.1简单的C++程序 15

2.2.2 C++程序的结构特性 17

2.2.3 C++程序的编辑、编译、连接和运行 18

2.3 C++在非面向对象方面的扩充 18

2.3.1注释行 19

2.3.2 C++的输入输出 19

2.3.3灵活的局部变量说明 21

2.3.4结构、联合和枚举名可直接作为类型名 22

2.3.5 const修饰符 22

2.3.6函数原型 25

2.3.7内联函数 28

2.3.8带有默认参数的函数 30

2.3.9函数的重载 31

2.3.10作用域运算符“∶∶” 33

2.3.11无名联合 34

2.3.12强制类型转换 35

2.3.13运算符new和delete 35

2.3.14引用 38

习题 44

第3章 类和对象 48

3.1类与对象的基本概念 48

3.1.1结构体与类 48

3.1.2成员函数的定义 53

3.1.3对象的定义及使用 56

3.1.4类的作用域和类成员的访问属性 59

3.2构造函数与析构函数 60

3.2.1对象的初始化和构造函数 60

3.2.2用成员初始化列表对数据成员初始化 65

3.2.3构造函数的重载 67

3.2.4带默认参数的构造函数 71

3.2.5析构函数 72

3.3对象数组与对象指针 75

3.3.1对象数组 75

3.3.2对象指针 78

3.3.3 this指针 80

3.4 string类 83

3.5向函数传递对象 85

3.5.1使用对象作为函数参数 85

3.5.2使用对象指针作为函数参数 86

3.5.3使用对象引用作为函数参数 87

3.6对象的赋值和复制 88

3.6.1对象赋值语句 88

3.6.2拷贝构造函数 89

3.7静态成员 96

3.7.1静态数据成员 96

3.7.2静态成员函数 101

3.8友元 105

3.8.1友元函数 105

3.8.2友元类 110

3.9类的组合 113

3.10常类型 117

3.10.1常引用 117

3.10.2常对象 118

3.10.3常对象成员 120

习题 122

第4章 派生类与继承 136

4.1派生类的概念 136

4.1.1为什么要使用继承 136

4.1.2派生类的声明 138

4.1.3派生类的构成 139

4.1.4基类成员在派生类中的访问属性 140

4.1.5派生类对基类成员的访问规则 141

4.2派生类的构造函数和析构函数 149

4.2.1派生类构造函数和析构函数的执行顺序 150

4.2.2派生类构造函数和析构函数的构造规则 151

4.3调整基类成员在派生类中的访问属性的其他方法 158

4.3.1同名成员 158

4.3.2访问声明 160

4.4多重继承 164

4.4.1多重继承派生类的声明 164

4.4.2多重继承派生类的构造函数与析构函数 166

4.4.3虚基类 170

4.5基类与派生类对象之间的赋值兼容关系 179

4.6应用举例 182

习题 188

第5章 多态性 198

5.1编译时的多态性与运行时的多态性 198

5.2运算符重载 199

5.2.1在类外定义的运算符重载函数 199

5.2.2友元运算符重载函数 203

5.2.3成员运算符重载函数 209

5.2.4成员运算符重载函数与友元运算符重载函数的比较 214

5.2.5“+++”和“--”的重载 216

5.2.6赋值运算符“=”的重载 221

5.2.7下标运算符“[]”的重载 225

5.3类型转换 227

5.3.1系统预定义类型间的转换 227

5.3.2类类型与系统预定义类型间的转换 228

5.4虚函数 235

5.4.1虚函数的引入 235

5.4.2虚函数的定义 239

5.4.3纯虚函数和抽象类 249

5.5应用举例 250

习题 255

第6章 模板与异常处理 260

6.1模板的概念 260

6.2函数模板与模板函数 260

6.3类模板与模板类 266

6.4异常处理 273

6.4.1异常处理概述 273

6.4.2异常处理的方法 274

6.5应用举例 278

习题 282

第7章 C++的流类库与输入输出 286

7.1 C++为何建立自己的输入输出系统 286

7.2 C++流的概述 287

7.2.1C++的输入输出流 287

7.2.2预定义的流对象 289

7.2.3输入输出流的成员函数 289

7.3预定义类型的输入输出 292

7.3.1插入运算符与提取运算符 292

7.3.2输入输出的格式控制 294

7.4用户自定义类型的输入输出 302

7.4.1重载插入运算符 302

7.4.2重载提取运算符 304

7.5文件的输入输出 305

7.5.1文件的打开与关闭 306

7.5.2文件的读写 309

7.6命名空间和头文件命名规则 317

7.6.1命名空间 317

7.6.2头文件命名规则 319

7.7应用举例 320

习题 323

第8章 面向对象程序设计方法与实例 326

8.1面向对象程序设计的一般方法和技巧 326

8.1.1问题分析和功能定义 327

8.1.2对象(类)设计及实现 327

8.1.3核心控制设计 329

8.1.4编码与测试 329

8.1.5进化 329

8.2设计实例:模拟网上购书的结账功能 330

8.2.1问题分析与功能定义 330

8.2.2对象(类)设计 330

8.2.3核心控制设计 333

8.2.4编码与测试 333

习题 339

参考文献 340