解析C++面向对象程序设计PDF电子书下载
- 电子书积分:16 积分如何计算积分?
- 作 者:甘玲,石岩,李盘林编著
- 出 版 社:北京:清华大学出版社
- 出版年份:2008
- ISBN:7302165297
- 页数:517 页
第1篇 引导篇 3
第1章 认识对象 3
1.1 问题的抽象 3
1.1.1 以功能为中心的抽象 3
1.1.2 以对象为中心的抽象 4
1.2 一切事物皆是对象 5
1.2.1 对象 5
1.2.2 类 6
1.2.3 属性、操作和方法 6
1.3 面向对象技术概述 7
1.3.1 面向对象的基本特征 7
1.3.2 面向对象的软件开发方法 10
1.3.3 面向对象的UML描述 11
1.4 C++简介 16
1.4.1 从C到C++ 17
1.4.2 简单的C++程序 18
1.4.3 C++程序结构 20
1.4.4 C++程序的上机过程 25
本章小结 26
习题1 27
第2篇 基础篇 31
第2章 发现对象和设计类 31
2.1 时钟问题 31
2.1.1 提出问题 31
2.1.2 分析问题 31
2.2 发现对象 32
2.2.1 定义属性 34
2.2.2 定义行为 36
2.3 设计类 37
2.3.1 定义类 37
2.3.2 访问权限控制 40
2.3.3 成员函数的实现方式 42
2.3.4 内联函数 44
2.4 创建对象 47
2.4.1 对象的定义(解决问题) 48
2.4.2 类成员的访问 50
2.4.3 构造函数 56
2.4.4 构造函数的重载 64
2.4.5 带默认参数的构造函数 71
2.4.6 析构函数 74
2.4.7 构造函数和析构函数的调用顺序 80
2.4.8 复制构造函数 83
2.5 对象间的数据共享问题 94
2.5.1 类的静态数据成员 94
2.5.2 静态成员的定义 95
2.5.3 静态数据成员的初始化 97
2.5.4 静态数据成员的使用 100
2.5.5 静态成员函数 102
2.6 举一反三 105
本章小结 111
常见错误 112
习题2 112
第3章 详解对象 120
3.1 多个同类对象信息管理的问题 120
3.1.1 提出问题 120
3.1.2 分析问题 120
3.2 对象的存储 121
3.2.1 变量的作用域 121
3.2.2 变量的生存期 123
3.2.3 动态内存分配 128
3.2.4 动态对象 133
3.2.5 名字空间 135
3.3 对象指针 137
3.3.1 对象指针的定义 137
3.3.2 对象指针的初始化 138
3.3.3 通过指针访问对象成员 139
3.3.4 解析应用实例 143
3.3.5 this指针 149
3.3.6 成员指针 153
3.4 对象引用 156
3.4.1 引用的概念 157
3.4.2 引用的定义 157
3.4.3 引用的作用 160
3.5 共享数据的保护 164
3.5.1 常量 164
3.5.2 const与指针 165
3.5.3 常引用 166
3.5.4 常对象 166
3.5.5 类的常成员 168
3.6 对象数组 171
3.6.1 数组的声明及使用 172
3.6.2 数组的初始化 173
3.6.3 对象数组 173
3.7 字符串对象 178
3.7.1 用字符数组存储和处理字符串 178
3.7.2 string类 179
3.8 对象成员 183
3.8.1 类的聚集与组合 183
3.8.2 对象成员的初始化 186
3.8.3 对象成员数组 187
3.9 解决问题 189
3.10 举一反三 191
本章小结 203
常见错误 204
习题3 205
第4章 派生新类 209
4.1 类层次的问题 209
4.1.1 提出问题 210
4.1.2 分析问题 210
4.2 派生与继承 211
4.2.1 派生 211
4.2.2 继承 211
4.2.3 访问控制 212
4.3 派生类 212
4.3.1 派生类定义 212
4.3.2 派生类成员的构成 213
4.3.3 派生后访问权限控制 213
4.3.4 派生类的构造函数和析构函数 219
4.4 多继承与虚拟继承 227
4.4.1 多继承派生类的定义 227
4.4.2 多继承派生类的构造函数 228
4.4.3 虚拟继承与虚基类 232
4.5 解决问题 242
4.6 举一反三 245
本章小结 249
常见错误 250
习题4 250
第5章 多态与抽象类 257
5.1 类层次的多态问题 257
5.1.1 提出问题 257
5.1.2 分析问题 257
5.2 类型兼容规则 258
5.3 多态的概念 262
5.4 多态的分类 262
5.5 联编 263
5.5.1 静态联编 263
5.5.2 动态联编 264
5.6 虚函数 265
5.6.1 虚函数的声明 265
5.6.2 虚函数的使用 265
5.6.3 虚函数表 270
5.6.4 虚析构函数 272
5.7 抽象类和纯虚函数 275
5.7.1 抽象类 275
5.7.2 纯虚函数 275
5.8 解决问题 279
5.9 举一反三 284
本章小结 291
常见错误 292
习题5 292
第6章 运算符重载与友元 295
6.1 复数的加减运算问题 295
6.1.1 提出问题 295
6.1.2 分析问题 295
6.2 运算符重载 297
6.2.1 运算符重载的定义 297
6.2.2 运算符重载的规则 302
6.3 友元 303
6.3.1 友元的作用 303
6.3.2 友元的定义 304
6.4 运算符重载的使用 310
6.4.1 运算符重载为成员函数 311
6.4.2 运算符重载为友元函数 316
6.5 解决问题 318
6.6 举一反三 320
本章小结 326
常见错误 327
习题6 327
第7章 模板——类的再抽象 330
7.1 标准模板库的设计问题 330
7.1.1 提出问题 330
7.1.2 分析问题 330
7.2 模板的概念 332
7.3 函数模板 332
7.3.1 函数模板的定义 332
7.3.2 模板函数的生成 333
7.4 类模板 334
7.4.1 类模板的定义 334
7.4.2 类模板的使用 335
7.5 解决问题 337
7.6 STL简介 341
7.6.1 STL与C++ 341
7.6.2 STL与C++标准函数库 341
7.6.3 使用STL 344
7.7 举一反三 352
本章小结 355
常见错误 355
习题7 355
第8章 输入/输出流对象 358
8.1 螺旋矩阵的输入/输出问题 358
8.1.1 提出问题 358
8.1.2 分析问题 359
8.2 流 360
8.2.1 流的概念 360
8.2.2 I/O流 360
8.2.3 I/O流类库的层次结构 360
8.2.4 I/O流类库的头文件 361
8.2.5 标准输入/输出流对象 362
8.3 无格式输入/输出 363
8.4 输入/输出的格式控制 364
8.4.1 用ios类成员函数格式化 364
8.4.2 用操作符函数格式化 369
8.5 解决问题 374
8.6 自定义类型对象的输入/输出 377
8.7 文件的输入/输出问题 379
8.7.1 提出问题 379
8.7.2 分析问题 379
8.7.3 文件的打开和关闭 380
8.7.4 解决问题 381
8.8 举一反三 384
本章小结 389
常见错误 389
习题8 390
第9章 异常处理 393
9.1 程序中潜在的异常问题 393
9.1.1 提出问题 393
9.1.2 分析问题 396
9.2 异常处理机制 396
9.2.1 传统的异常处理方法 396
9.2.2 系统层次异常处理的标准设施 397
9.3 C++中的异常处理机制 397
9.3.1 异常的抛出、检测和捕获 397
9.3.2 解决问题 399
9.3.3 异常在多层模块间的传递 401
9.3.4 异常接口声明 403
9.3.5 异常处理中析构函数的调用 404
9.3.6 异常类的层次结构 405
9.4 标准异常 408
9.5 使用异常处理应注意的几个问题 411
9.6 举一反三 414
本章小结 417
常见错误 147
习题9 417
第10章 C++面向对象程序设计 419
10.1 实用开发基础 419
10.1.1 工程文件 419
10.1.2 分块开发 419
10.2 设计类和对象 420
10.2.1 正确使用抽象 421
10.2.2 发现对象并建立对象层 421
10.2.3 定义数据成员和成员函数 422
10.2.4 设计类的原则 423
10.2.5 如何发现基类和派生类结构 424
10.3 主函数设计 425
第3篇 应用篇 429
第11章 案例解析 429
11.1 案例1 数学计算 429
11.2 案例2 大学物理不确定度计算 433
11.3 案例3 STL的应用和泛型编程 439
11.4 案例4 Windows应用程序设计 445
11.5 案例5 网络编程 449
11.6 案例6 编译程序设计 458
附录A C++语法摘要 477
A.1 词法规则 477
A.1.1 标识符 477
A.1.2 关键字 477
A.1.3 常量 477
A.1.4 变量 479
A.1.5 语句 479
A.1.6 注释 479
A.2 数据类型 479
A.2.1 基本数据类型 479
A.2.2 构造数据类型 480
A.2.3 数据类型转换 480
A.3 运算符 480
A.4 表达式 481
A.5 语句 482
A.5.1 带标号语句 482
A.5.2 表达式语句 482
A.5.3 复合语句 482
A.5.4 函数调用语句 483
A.5.5 控制语句 483
A.6 与OOP有关的关键字 485
A.7 与OOP有关的语法 485
A.7.1 类的定义 485
A.7.2 成员函数的定义 486
A.7.3 对象 486
A.7.4 构造函数和析构函数 486
A.7.5 复制构造函数 487
A.7.6 类的继承 487
A.7.7 虚基类 488
A.7.8 虚函数 488
A.8 友元函数与友元类 489
A.9 运算符重载 489
A.10 类模板 490
A.11 函数模板 490
A.12 异常处理 490
附录B C++标准库简介 492
B.1 标准头文件的包含 492
B.2 标准库的组成 492
B.3 常用标准头文件及其主要内容介绍 494
B.3.1 泛型算法简介 494
B.3.2 容器简介 497
B.3.3 迭代器简介 497
B.3.4 I/O流库简介 498
B.3.5 string类简介 499
附录C Visual C++开发环境概述 501
C.1 开发环境简介 501
C.2 开发环境的菜单功能 503
C.3 开发环境的工具栏 506
C.4 项目和项目工作区 507
附录D 调试方法简介 509
D.1 修正语法错误 509
D.2 设置断点 510
D.3 启用和终止调试器 510
D.4 控制程序运行 511
D.5 使用QuickWatch窗口查看和修改变量的值 511
D.6 Watch窗口的使用 512
D.7 Variables窗口的使用 513
附录E C++常见错误 514
参考文献 517
- 《社会学与人类生活 社会问题解析 第11版》(美)James M. Henslin(詹姆斯·M. 汉斯林) 2019
- 《指向核心素养 北京十一学校名师教学设计 英语 七年级 上 配人教版》周志英总主编 2019
- 《数字影视特效制作技法解析》王文瑞著 2019
- 《设计十六日 国内外美术院校报考攻略》沈海泯著 2018
- 《计算机辅助平面设计》吴轶博主编 2019
- 《高校转型发展系列教材 素描基础与设计》施猛责任编辑;(中国)魏伏一,徐红 2019
- 《景观艺术设计》林春水,马俊 2019
- 《程序逻辑及C语言编程》卢卫中,杨丽芳主编 2019
- 《高等教育双机械基础课程系列教材 高等学校教材 机械设计课程设计手册 第5版》吴宗泽,罗圣国,高志,李威 2018
- 《2019国家医师资格考试用书 中医执业助理医师资格考试全真模拟试卷与解析 第3版》国家医师资格考试研究组 2019
- 《市政工程基础》杨岚编著 2009
- 《家畜百宝 猪、牛、羊、鸡的综合利用》山西省商业厅组织技术处编著 1959
- 《《道德经》200句》崇贤书院编著 2018
- 《高级英语阅读与听说教程》刘秀梅编著 2019
- 《计算机网络与通信基础》谢雨飞,田启川编著 2019
- 《看图自学吉他弹唱教程》陈飞编著 2019
- 《法语词汇认知联想记忆法》刘莲编著 2020
- 《培智学校义务教育实验教科书教师教学用书 生活适应 二年级 上》人民教育出版社,课程教材研究所,特殊教育课程教材研究中心编著 2019
- 《国家社科基金项目申报规范 技巧与案例 第3版 2020》文传浩,夏宇编著 2019
- 《流体力学》张扬军,彭杰,诸葛伟林编著 2019
- 《大学计算机实验指导及习题解答》曹成志,宋长龙 2019
- 《指向核心素养 北京十一学校名师教学设计 英语 七年级 上 配人教版》周志英总主编 2019
- 《大学生心理健康与人生发展》王琳责任编辑;(中国)肖宇 2019
- 《大学英语四级考试全真试题 标准模拟 四级》汪开虎主编 2012
- 《大学英语教学的跨文化交际视角研究与创新发展》许丽云,刘枫,尚利明著 2020
- 《北京生态环境保护》《北京环境保护丛书》编委会编著 2018
- 《复旦大学新闻学院教授学术丛书 新闻实务随想录》刘海贵 2019
- 《大学英语综合教程 1》王佃春,骆敏主编 2015
- 《大学物理简明教程 下 第2版》施卫主编 2020
- 《指向核心素养 北京十一学校名师教学设计 英语 九年级 上 配人教版》周志英总主编 2019