面向对象程序设计基础PDF电子书下载
- 电子书积分:13 积分如何计算积分?
- 作 者:李师贤等编著
- 出 版 社:北京:高等教育出版社
- 出版年份:1998
- ISBN:7040064103
- 页数:379 页
引言 1
第一章 程序设计与C++语言初步 4
§1.1 计算机程序 4
1.1.1 算法 4
1.1.2 实体 4
1.1.3 程序 5
1.1.4 程序设计 7
§1.2 程序设计的演变 8
1.2.1 早期程序设计 8
1.2.3 面向对象程序设计 9
1.2.2 结构化程序设计 9
§1.3 程序设计语言的定义 10
1.3.1 语法和语义 10
1.3.2 字符集 10
1.3.3 Backus-Naur范式 11
1.3.4 语法图 12
§1.4 C++语言的程序结构 13
1.4.1 C++语言程序的组成 13
1.4.2 C++语言程序的基本结构 14
1.4.3 C++语言程序的退化结构 16
§1.5 C++语言程序的运行 16
本章小结 18
§1.6 面向对象程序设计过程 18
练习与思考题 19
上机实习题 20
第二章 基本数据类型 21
§2.1 数据类型概述 21
2.1.1 类型 21
2.1.2 类型的作用 21
2.1.3 C++语言的类型 21
§2.2 保留字、标识符、常量与变量 22
2.2.1 单词 22
2.2.3 标识符 23
2.2.2 保留字 23
2.2.4 选择合适的标识符 24
2.2.5 常量与变量 25
2.2.6 简单输入/输出 26
§2.3 基本数据类型 27
2.3.1 字符类型 28
2.3.2 整数类型 30
2.3.3 浮点类型和双精度类型 31
2.3.4 字符串常量 32
§2.4 运算符与表达式 33
2.3.5 符号常量 33
2.4.1 表达式 34
2.4.2 算术运算 35
2.4.3 关系运算 37
2.4.4 逻辑运算 37
2.4.5 位运算 38
2.4.6 条件运算 40
2.4.7 Sizeof运算 40
2.4.8 运算符优先级与结合性质 41
§2.5 类型之间的关系 43
2.5.1 隐式类型转换 43
2.5.2 强制类型转换 44
§2.6 一个简单的应用程序 45
本章小结 46
练习与思考题 46
上机实习题 48
第三章 基本控制结构 49
§3.1 程序的基本控制结构 49
3.1.1 C++语言的简单语句 49
3.1.2 单入口/单出口控制结构 50
3.1.3 结构化程序设计工具 50
3.2.1 if语句 53
§3.2 选择结构 53
3.2.2 switch语句 59
§3.3 循环结构 64
3.3.1 while语句 64
3.3.2 do-while语句 68
3.3.3 for语句 70
3.3.4 设计正确的循环 73
§3.4 简单程序设计举例 74
3.4.1 问题 74
3.4.2 求解问题的精美算法 74
3.4.3 求解问题的原始算法 75
本章小结 76
练习与思考题 77
上机实习题 78
第四章 函数 80
§4.1 C++语言的函数 80
4.1.1 例程与函数 80
4.1.2 函数的建立与使用 81
4.1.3 两个简单的例子 82
§4.2 函数的声明与调用 84
4.2.1 函数声明 84
4.2.2 return语句 85
4.2.3 函数调用 86
4.2.4 函数与模块 89
§4.3 参数传递 91
4.3.1 参数传递方式 91
4.3.2 按值调用 91
4.3.3 缺省参数 92
§4.4 标识符的作用域 94
4.4.1 作用域 94
4.4.2 局部变量与全局变量 95
§4.5 变量的生存期 98
4.5.1 C++程序的存储组织 99
4.5.2 自动变量和寄存器变量 99
4.5.3 静态变量 100
4.5.4 外部变量 101
§4.6 递归程序设计 102
4.6.1 简单递归程序 102
4.6.2 梵塔问题 104
§4.7 C++语言的库函数 106
4.7.1 库函数的用法 106
4.7.2 常用数值函数 106
4.7.3 常用字符函数 107
练习与思考题 108
本章小结 108
上机实习题 112
第五章 类与对象 113
§5.1 类的引入 113
5.1.1 循环计数器 113
5.1.2 关于循环计数器的讨论 116
5.1.3 类作为构造程序的基本单位 117
§5.2 类的定义 118
5.2.1 类声明 118
5.2.3 类界面与类实现 120
5.2.2 类成员的访问控制 120
5.2.4 标识符的类作用域 123
§5.3 对象的创建 123
5.3.1 对象声明 123
5.3.2 使用对象成员 125
5.3.3 对象的生存期 126
§5.4 对象的初始化 126
5.4.1 构造函数 127
5.4.2 析构函数 129
5.4.3 对象成员的初始化 130
5.5.1 模拟数字式时钟 132
§5.5 使用类与对象构造程序的实例 132
5.5.2 单实例对象类 134
§5.6 关于类与对象的进一步讨论 135
5.6.1 基本数据类型与对象 135
5.6.2 抽象数据类型 135
5.6.3 设计良好的类界面 136
5.6.4 再论对象 137
5.6.5 下一步 137
本章小结 138
练习与思考题 139
上机实习题 144
第六章 复合数据类型 145
§6.1 变量与赋值的进一步讨论 145
§6.2 指针类型 146
6.2.1 指针的声明 146
6.2.2 指针的引用 148
6.2.3 指针的运算 149
6.2.4 按引用调用的参数传递方式 150
§6.3 数组类型 151
6.3.1 一维数组的声明 151
6.3.2 一维数组元素的引用与初始化 152
6.3.4 一维数组应用举例 154
6.3.3 数组作为函数的参数 154
6.3.5 二维数组的声明 156
6.3.6 二维数组元素的引用与初始化 157
6.3.7 二维数组应用举例 157
6.3.8 指针与数组 159
6.3.9 指针数组与数组指针 161
§6.4 字符串 161
6.4.1 字符串常量与变量 161
6.4.2 字符串数组 162
6.4.3 关于字符串操作的库函数 163
6.5.1 对象指针 165
§6.5 指向对象的指针 165
6.5.2 对象的动态创建与撤销 166
6.5.3 对象的复制与比较 168
§6.6 指向函数的指针 171
6.6.1 函数指针 171
6.6.2 函数指针作为参数 172
6.6.3 主动对象 172
§6.7 结构类型、枚举类型与类型别名 173
6.7.1 结构类型 173
6.7.2 枚举类型 174
§6.8 高级数据结构应用 175
6.7.3 类型别名 175
本章小结 180
练习与思考题 180
上机实习题 186
第七章 继承机制 187
§7.1 继承的基本概念 187
7.1.1 IS-A关系 187
7.1.2 继承机制 187
7.1.3 继承的作用 189
7.1.4 继承与软件重用 189
7.2.1 继承的语法 190
§7.2 C++语言的继承机制 190
7.2.2 继承成员的访问控制规则 193
7.2.3 一个应用继承机制的完整例子 194
7.2.4 派生类对象的存储组织 199
7.2.5 类型兼容性 200
§7.3 继承与构造函数、析构函数 202
7.3.1 构造函数与析构函数的调用次序 202
7.3.2 向基类构造函数传递实际参数 204
§7.4 继承成员的调整 205
7.4.1 恢复访问控制方式 205
7.4.2 继承成员的重定义 206
7.4.4 屏蔽继承成员 208
7.4.3 继承成员的重命名 208
§7.5 多重继承 210
7.5.1 多重继承的应用背景 210
7.5.2 多重继承的语法形式 211
7.5.3 多重继承的名字冲突问题 212
7.5.4 多重继承的构造函数和析构函数 214
§7.6 重复继承 216
7.6.1 重复继承的应用背景 216
7.6.2 重复继承的二义性问题 218
7.6.3 虚基类 220
7.6.4 虚基类的构造函数与析构函数 221
§7.7 优化类层次设计 222
7.7.1 抽象与具体 222
7.7.2 封装与开放 222
7.7.3 使用继承与使用对象成员 223
7.7.4 典型类层次 223
7.7.5 其他技术 223
本章小结 224
练习与思考题 225
上机实习题 230
8.1.2 表示独立性 231
8.1.1 程序的多态性 231
第八章 多态性 231
§8.1 多态性的基本概念 231
§8.2 函数重载 232
8.2.1 函数重载的方法 232
8.2.2 函数重载的注意事项 233
8.2.3 函数重载的二义性 234
8.2.4 构造函数重载 236
§8.3 拷贝构造函数 238
8.3.1 函数按值调用传递对象参数产生的问题 238
8.3.2 对象作为函数返回值产生的问题 239
8.3.3 拷贝构造函数 241
§8.4 运算符重载 242
8.4.1 运算符函数 242
8.4.2 类成员运算符重载 243
8.4.3 重载一元运算符 246
8.4.4 重载赋值运算符 = 247
8.4.5 重载下标运算符“[]” 247
8.4.6 友元 248
8.4.7 友元运算符重载 249
8.4.8 运算符重载的其他规则 250
8.5.1 什么是虚函数 251
§8.5 虚函数 251
8.5.2 静态绑定与动态绑定 253
8.5.3 设计合适的绑定方式 254
§8.6 抽象类 255
5.6.1 纯虚函数 255
8.6.2 抽象类 257
8.6.3 多态数据结构 258
本章小结 267
练习与思考题 267
上机实习题 273
9.1.1 类型的严格性与灵活性 274
9.1.2 解决冲突的途径 274
第九章 类属机制 274
§9.1 类属的基本概念 274
9.1.3 类属机制 275
§9.2 类模板 275
9.2.1 类属类的定义 275
9.2.2 类属类的实例化 278
9.2.3 多个形式类属参数 280
9.2.4 类属类的继承关系 281
9.3.1 类属函数 283
§9.3 函数模板 283
9.3.2 类属函数的定义 284
9.3.3 类属函数的实例化 285
9.3.4 类属函数的重载 285
本章小结 287
练习与思考题 287
上机实习题 289
第十章 输入/输出流 290
§10.1 C++语言的输入/输出 290
10.1.1 外部设备与文件 290
10.1.2 程序中对文件的操作 290
10.1.3 文件的基本概念 291
§10.2 C++的流类库 292
10.2.1 流类库的基本结构 292
10.2.2 预定义的流 292
10.2.3 支持文件的流类 293
10.2.4 支持字符串的流类 294
§10.3 格式化输入/输出 294
10.3.1 使用ios成员函数 294
10.3.2 使用输入/输出操纵符 298
10.3.3 格式化输出到字符串 299
10.4.1 重载流的插入操作 301
§10.4 设计自己的输入/输出操作 301
10.4.3 一个完整的实例 302
10.4.2 重载流的提取操作 302
10.4.4 设计自己的输入/输出操纵符 305
§10.5 检测流操作的错误 307
§10.6 文件流 307
10.6.1 文件的打开与关闭 307
10.6.2 文本文件的操作 309
10.6.3 二进制文件的操作 310
10.6.4 文件的随机读/写 312
练习与思考题 314
10.6.5 程序的打印输出 314
本章小结 314
上机实习题 316
第十一章 面向对象软件构造 317
§11.1 软件质量 317
§11.2 程序断言机制 317
11.2.1 程序断言 317
11.2.2 程序断言的用法 319
11.2.3 在C++语言中实现部分断言 321
11.3.2 异常处理的模式 322
11.3.1 异常处理 322
§11.3 异常处理机制 322
11.3.3 C++语言的异常处理机制 323
11.3.4 捕获所有类型的异常 325
11.3.5 带有异常说明的函数原型 326
11.3.6 异常的逐层传递 327
11.3.7 创建对象时的异常处理 328
§11.4 可重用构件库 329
11.4.1 可重用构件库开发规范 329
11.4.2 基本术语定义 329
11.4.3 构件库组织形式与使用方法 330
11.4.4 构件库设计风格 332
11.4.5 构件库设计原则 337
11.4.6 构件库文档编制指南 338
§11.5 面向对象软件构造 338
11.5.1 标识对象与行为 339
11.5.2 标识对象之间的关系 339
11.5.3 建立对象的类描述 340
11.5.4 创建并驱动对象的运行 340
§11.6 实例研究:Petri网图形编辑器 340
11.6.1 问题定义 340
11.6.2 对象之间关系与类的设计 341
11.6.3 关于Petri网图形编辑器的讨论 363
本章小结 365
练习与思考题 365
上机实习题 367
第十二章 结束语 368
§12.1 程序设计风范 368
12.1.1 过程程序设计 368
12.1.2 模块程序设计 368
12.1.3 类型程序设计 370
12.1.4 面向对象程序设计 372
§12.2 面向对象程序设计语言 373
12.1.5 其他程序设计风范 373
12.2.1 Simula语言 374
12.2.2 Smalltalk语言 374
12.2.3 C++语言 374
12.2.4 Eiffel语言 375
12.2.5 Java语言 376
本章小结 377
练习与思考题 377
上机实习题 377
附录A ASCII编码表 378
- 《联吡啶基钌光敏染料的结构与性能的理论研究》李明霞 2019
- 《指向核心素养 北京十一学校名师教学设计 英语 七年级 上 配人教版》周志英总主编 2019
- 《设计十六日 国内外美术院校报考攻略》沈海泯著 2018
- 《计算机辅助平面设计》吴轶博主编 2019
- 《高校转型发展系列教材 素描基础与设计》施猛责任编辑;(中国)魏伏一,徐红 2019
- 《景观艺术设计》林春水,马俊 2019
- 《程序逻辑及C语言编程》卢卫中,杨丽芳主编 2019
- 《高等教育双机械基础课程系列教材 高等学校教材 机械设计课程设计手册 第5版》吴宗泽,罗圣国,高志,李威 2018
- 《指向核心素养 北京十一学校名师教学设计 英语 九年级 上 配人教版》周志英总主编 2019
- 《Cinema 4D电商美工与视觉设计案例教程》樊斌 2019
- 《市政工程基础》杨岚编著 2009
- 《家畜百宝 猪、牛、羊、鸡的综合利用》山西省商业厅组织技术处编著 1959
- 《《道德经》200句》崇贤书院编著 2018
- 《高级英语阅读与听说教程》刘秀梅编著 2019
- 《计算机网络与通信基础》谢雨飞,田启川编著 2019
- 《看图自学吉他弹唱教程》陈飞编著 2019
- 《法语词汇认知联想记忆法》刘莲编著 2020
- 《培智学校义务教育实验教科书教师教学用书 生活适应 二年级 上》人民教育出版社,课程教材研究所,特殊教育课程教材研究中心编著 2019
- 《国家社科基金项目申报规范 技巧与案例 第3版 2020》文传浩,夏宇编著 2019
- 《流体力学》张扬军,彭杰,诸葛伟林编著 2019
- 《全国高等中医药行业“十三五”创新教材 中医药学概论》翟华强 2019
- 《培智学校义务教育实验教科书教师教学用书 生活适应 二年级 上》人民教育出版社,课程教材研究所,特殊教育课程教材研究中心编著 2019
- 《指向核心素养 北京十一学校名师教学设计 英语 七年级 上 配人教版》周志英总主编 2019
- 《习近平总书记教育重要论述讲义》本书编写组 2020
- 《办好人民满意的教育 全国教育满意度调查报告》(中国)中国教育科学研究院 2019
- 《高等数学试题与详解》西安电子科技大学高等数学教学团队 2019
- 《北京生态环境保护》《北京环境保护丛书》编委会编著 2018
- 《教育学考研应试宝典》徐影主编 2019
- 《语文教育教学实践探索》陈德收 2018
- 《家庭音乐素养教育》刘畅 2018