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

  • 购买积分:16 如何计算积分?
  • 作  者:李晋江编著
  • 出 版 社:北京:清华大学出版社
  • 出版年份:2016
  • ISBN:9787302422051
  • 页数:532 页
图书介绍:全书详细介绍了和C++相关的C语言知识、类和对象、继承、多态、模板和运算符重载。本书还介绍了面向对象设计方法的概念,结合知识点简要地讨论了几种常用的设计模式。本书针对重要概念精心设计了大量实例,涉及很多技巧和经验,对有一些C++基础的读者也有很好的参考价值。本书不仅可以作为高等院校C++面向对象程序设计的教材,也是希望了解C++语言和面向对象程序设计知识的专业人员的很好参考书。

第1章 绪论 1

1.1 程序设计语言 1

1.2 C++的发展历史 4

1.3 面向过程程序设计语言 5

1.4 面向对象程序设计语言 7

1.5 类与抽象数据类型 10

1.6 继承与多态 10

1.7 接口与组件 11

习题 12

第2章 从C到C++ 13

2.1 自定义数据类型 13

2.1.1 结构体 13

2.1.2 共用体 28

2.1.3 位域 33

2.1.4 枚举 39

2.1.5 typedef声明类型 42

2.2 函数 46

2.2.1 引用 46

2.2.2 参数传递方式 52

2.2.3 函数的重载 57

2.2.4 有默认参数的函数 60

2.2.5 内联函数 61

2.2.6 函数调用栈结构 65

2.2.7 函数返回值 69

2.2.8 函数指针和指针函数 78

2.2.9 const修饰符 88

2.3 函数和结构体 97

2.3.1 有函数的结构体 97

2.3.2 若干实例 102

习题 112

第3章 C++语言初步 114

3.1 一个简单的C++程序 114

3.2 名字空间 115

3.2.1 名字空间的定义 117

3.2.2 域操作符:: 118

3.2.3 无名的名字空间 120

3.2.4 名字空间的别名 121

3.2.5 组合和选择 122

3.2.6 名字空间和重载 123

3.2.7 名字查找 124

3.2.8 名字空间是开放的 125

3.3 输入和输出 125

3.3.1 cout输出 126

3.3.2 cin输入 130

3.4 string类型 133

3.5 new和delete 140

3.6 异常处理 146

习题 153

第4章 类和对象 156

4.1 一个典型例子 156

4.2 类介绍 162

4.3 示例:Stack类 173

4.4 构造函数与析构函数 176

4.4.1 构造函数 176

4.4.2 复制构造函数 182

4.4.3 构造函数的初始化列表 189

4.4.4 析构函数 192

4.4.5 构造/析构函数的显示调用 200

4.5 类的静态成员 203

4.6 this指针 211

4.7 指向类成员的指针 220

4.8 成员对象和封闭类 224

4.9 常成员和常对象 230

4.10 引用成员 236

4.11 友元 241

4.12 局部类和嵌套类 246

4.13 C语言实现类的封装 253

习题 256

第5章 继承和派生 260

5.1 介绍 260

5.2 基本概念与语法 264

5.3 派生类成员的访问属性 268

5.3.1 公有继承 269

5.3.2 私有继承 274

5.3.3 保护继承 279

5.3.4 基类static成员的继承 281

5.3.5 派生类的using声明 284

5.4 派生类构造函数和析构函数 287

5.4.1 派生类构造函数 287

5.4.2 派生类析构函数 294

5.4.3 派生类复制构造函数 295

5.4.4 派生类和成员对象 297

5.5 多重继承 299

5.6 继承和组合 310

5.7 重载、隐藏和覆盖 318

5.8 C语言实现继承 323

习题 325

第6章 多态性 330

6.1 多态的形式 330

6.1.1 静态多态 330

6.1.2 动态多态 333

6.2 虚函数定义 334

6.3 虚函数和多态 341

6.3.1 虚函数多态的形式 341

6.3.2 动态联编 345

6.3.3 多态的实现 347

6.3.4 构造函数中调用virtual函数 352

6.3.5 普通成员函数中调用虚函数 355

6.3.6 私有虚函数 356

6.3.7 虚析构函数 362

6.3.8 有默认参数的虚函数 363

6.3.9 虚函数和友元 364

6.4 纯虚函数和抽象类 369

6.4.1 纯虚函数定义 369

6.4.2 继承的局限 373

6.4.3 接口的继承和实现继承 375

6.5 多态增强程序可扩充性的例子 378

6.6 dynamic_cast和static_cast 389

6.7 多重继承和虚函数 396

6.8 C语言实现多态 400

习题 405

第7章 运算符重载 407

7.1 运算符重载的定义 407

7.2 常用运算符的重载 412

7.2.1 下标运算符的重载 412

7.2.2 输入输出运算符重载 414

7.2.3 赋值运算符重载 416

7.2.4 关系运算符重载 420

7.2.5 new和delete运算符重载 423

7.2.6 解除引用运算符重载 426

7.2.7 函数运算符重载 429

7.3 运算符重载的注意事项 438

习题 442

第8章 面向接口编程 444

8.1 接口与实现分离 444

8.2 代理模式 448

8.3 桥接模式 453

8.4 适配器模式 461

8.5 组合模式 467

8.6 观察者模式 470

习题 478

第9章 模板 480

9.1 函数模板 480

9.2 类模板 490

9.3 类模板实例:队列 510

9.4 模板的特化 512

9.5 模板和宏 521

习题 524

附录A UML类图 526

参考文献 532