C++语言和面向对象程序设计

C++语言和面向对象程序设计
作 者: 宛延Kai 宛延Kai
出版社: 清华大学出版社
丛编项: 计算机语言及程序设计
版权说明: 本书为公共版权或经版权方授权,请支持正版图书
标 签: VC++
ISBN 出版时间 包装 开本 页数 字数
未知 暂无 暂无 未知 0 暂无

作者简介

暂缺《C++语言和面向对象程序设计》作者简介

内容简介

内容简介C++程序设计语言和面向对象程序设计代表了旨在使计算机问题解更符合人的思维活动,这是一场软件开发方法的革命。面向对象模型和面向对象设计与实现对软件开发起着关键作用。全书共分十章。第一章概论;第二、三章是C到C++的过渡;第四章是C++环境中的C;第五、六、七章分别介绍了数据封装和隐藏、继承和导出类、多态性和虚拟函数;第八、九章分别介绍面向对象模型和面向对象设计与实现;第十章分两大部分:第一部分介绍面向对象设计与实现的两个典型实例分析;第二部分给出综合的四个有代表性的C++和面向对象典型实例分析。本书由浅入深地围绕面向对象的主要特征为主干线,通过大量典型实例循序渐进地介绍C++语言、面向对象模型、面向对象设计与实现,以及面向对象程序设计。是大专院校学生、硕士生以及博士生的教科书,适用于广大软件工作者,也是学习C++及面向对象方法的科技工作者较全面的参考书,同时本书也可作为现代软件工程课程和软件开发方法的补充教材。

图书目录

第一章 绪论

1. 1 综述

1. 2 面向对象程序设计

1. 3 面向对象问题解

1. 4 类. 对象和封装

1. 5 子类——继承性和多态性

1. 6 面向对象程序设计的挑战

1. 6. 1 划分软件为类

1. 6. 2 对已存的软件系统增加功能

1. 6. 3 类型和子类型的层次结构

1. 6. 4 应改变典型软件开发过程

1. 6. 5 对“算法十数据结构=程序设计”的挑战

1. 7 面向对象方法

1. 7. 1 什么是面向对象?

1. 7. 2 面向对象开发方法

1. 7. 3 面向对象方法学

1. 7. 4 三种模型

1. 7. 5 小结

第二章 从C语言如何过渡到C++语言

2. 1 C++语言:一个正在演变的语言及其发展史

2. 2 在较小范围内如何将C++增强C

2. 2. 1 注释行

2. 2. 2 枚举名

2. 2. 3 结构体或类名

2. 2. 4 在块(分程序)内说明

2. 2. 5 作用域限定运算符

2. 2. 6 const说明符

2. 2. 7 无名共用体(anonymous unions)

2. 2. 8 显式类型转换

2. 2. 9 函数原型

2. 2. 10 函数名重载

2. 2. 11 函数参数的缺省值

2. 2. 12 具有不确定参数个数的函数

2. 2. 13 函数中引用参数

2. 2. 14 inline说明符

2. 2. 15 new和delete运算符

2. 2. 16 指向void的指针和返回void函数

2. 3 在较大范围内如何将C++增强C

2. 3. 1 类的构造和数据封装

2. 3. 2 结构是一种特殊类

2. 3. 3 构造函数和析构函数

2. 3. 4 私有. 保护和公共部分

2. 3. 5 对象和消息

2. 3. 6 友元(friends)

2. 3. 7 类中运算符和函数名重载

2. 3. 8 导出类

2. 3. 9 虚拟函数

2. 3. 10 流库

第三章 快速掌握C++语言

3. 1 注释行

3.2 常量. 类型和说明

3. 3 C++运算符

3. 4 传递引用

3. 5 指针

3. 6 const说明符

3. 7 void类型

3. 8 枚举类型

3. 9 无名共用体(anongmous unions)

3. 10 显式类型转换

3. 11 函数

3. 11. 1 函数原型

3. 11. 2 内联(inline)函数

3. 11. 3 缺省自变量

3. 11. 4重载函数名

3. 11. 5 不确定自变量个数的函数

3. 11. 6 指向函数的指针和类属

3. 12 C++系统的文件和物理组织

第四章 C++环境中的C

4. 1 函数调用

4. 2 函数参数表

4. 3 函数原型

4. 4 引用型参数

4. 5 参数个数不定

4. 6 函数指针

4. 7 const类型说明符

4. 8 C代码的接口

4. 8. 1 设计的考虑

4. 8. 2 C语言连接

4. 8. 3 从C调用C++

4. 8. 4 在C和C++之间共享头文件

4. 8. 5 将C数据输入到C++

4. 8. 6 C++数据输入到C

4. 9 操作符引用返回值

第五章 数据封装和数据隐藏

5. 1 过程语言. 数据抽象. 封装和数据隐藏

5. 2 C++类

5. 2. 1 C++类的基本概念和实例

5. 2. 2 C++类与C结构

5. 3 类自引用

5. 4 构造函数和析构函数

5. 4. 1 一个C++类的栈抽象数据类型的实现

5. 4. 2 用Modula—2实现的栈抽象数据类型

5. 5 作为成员的类对象

5. 6 对象向量

5. 7 友元(friends)

5. 8 类的静态成员

5. 9 运算符重载

5. 9. 1 双目和单目运算符

5. 9. 2 运算符重载的两个例子

5. 9. 3 <stream. h>库

5. 10 几个基本行类

5. 10. 1 类属表

5. 10. 2 用二叉查找树实现类屑查找表

5. 10. 3 search—table抽象的C++封装

第六章 导出类和继承性

6. 1 导出类构造

6. 2 父类有构造函数的导出类

6. 3 导出类的一些例子

6. 3. 1 导出counter类

6. 3. 2 一个大学的类系统

6. 3. 3 从类属表中导出栈和队列

6. 4 继承性

6. 4. 1 简单继承

6. 4. 2 范围和访问控制

6. 4. 3 多重继承

第七章 多态性和虚拟函数

7. 1 虚拟函数

7. 2 生成链表的一个面向对象解

7. 2. 1 异质链表的非多态性解

7. 2. 2 异质链表的面向对象解

7. 2. 3 非面向对象和面向对象系统的维护

7. 3 多态性的异质查询树

7. 4 使用多态性构造的有限状态自动机

第八章 面向对象模型

8. 1 对象模型

8. 1. 1 对象图

8. 1. 2 连接和关联

8. 1. 3 高级的连接和关联

8. 1. 4 概括和继承

8. 2 动态模型

8. 2. 1 事件和状态

8. 2. 2 状态图

8. 2. 3 操作

8. 2. 4 动态模型的实例(程控恒温器)

8. 2. 5 对象模型和动态模型的关系

8. 3 功能模型

8. 3. 1 数据流图

8. 3. 2 操作

8. 3. 3 约束

8. 3. 4 功能模型的实例(飞行模拟装置)

8. 3. 5 功能模型与对象和动态模型的关系

第九章 面向对象设计与实现

9. 1 分析

9. 2 系统设计

9. 2. 1 将系统划分为子系统

9. 2. 2 系统设计阶段综述

9. 2. 3 系统设计的几个步骤

9. 3 对象设计

9. 3. 1 对象设计综述

9. 3. 2 对象设计的步骤

9. 4 小结

第十章 面向对象设计与C++面向对象程序设计典型实例剖析

面向对象设计与实现的典型实例剖析

l0. 1 计算机动画

10. 1. 1 动画的制作过程

10. 1. 2 问题叙述

10. 1. 3 分析

10. 1. 4 系统设计

10. 1. 5 对象设计

10. 1. 6 实现

10. 2 对象图编译

10. 2. 1 问题叙述

10. 2. 2 系统设计

10. 2. 3 对象设计

C++与面向对象程序设计典型实例剖析

10. 3 快速拼写检查程序

10. 3. 1 拼写检查程序的设计说明

10. 3. 2 拼写检查程序的高层设计

10. 3. 3 拼写检查程序的低层设计

10. 3. 4 拼写检查程序的实现

l0. 4 银行出纳员离散事件模拟

l0. 4. 1 队列模拟的设计说明

10. 4. 2 队列模拟的高层设计

10. 4. 3 队列模拟的低层设计

10. 4. 4 队列模拟的实现

10. 4. 5 模拟输出

10. 4. 6 队列模拟的维护

10. 5 交互式函数评价程序

10. 5. 1 函数评价程序的设计说明

10. 5. 2 表达式树的回顾

10. 5. 3 函数评价程序的高层设计

10. 5. 4 函数评价程序的低层设计

lo. 5. 5 函数评价程序的全部实现

10. 6 用C++仿真生态系统

l0. 6. 1 人工生命是什么?

10. 6. 2 计算机和生命

lo. 6. 3 生态系统仿真的基本说明

l0. 6. 4 用C++仿真生态系统实例

参考文献