书籍详情

C++大学教程(第二版)

C++大学教程(第二版)

作者:(美)Harvey M.Deitel,(美)Paul James Deitel著;邱仲潘 等译

出版社:电子工业出版社

出版时间:2001-07-01

ISBN:9787505367272

定价:¥78.00

购买这本书可以去
内容简介
  欢迎使用ANSI/ISODraftStandardC++语言。本书是由一老一少写成的。老者(HMD,1967年毕业于麻省理工学院)有着36年的编程和教学经验,少者(PJD,1991年毕业于麻省理工学院)有15年的编程经验,并有着丰富的教学与写作经历。老者经验丰富,少者精力充沛。老者追求清晰,少者追求性能。老者喜欢优雅与美观,少者喜欢快速得到结果。一老一少的合作,使本书的信息更丰富、内容更有趣。这是C++编程者应当高兴和兴奋的时刻,ANSI/ISOC++草案标准即将正式应用。ANSI(AmericanNationalStandardsInstitute,美国国家标准委员会)和ISO(InternationalStandardsOrganization,国际标准化组织)合作开发了这个标准的草案,它即将成为计算机界最重要的全球性标准。当我们编写《C++大学教程》第一版时,我们的目标是为高等学校学生编写一本教材,当时的学生主要学习Pascal和C语言,强调“过程式”编程模式。向计算机科学专业一年级和二年级学生提供一本C++教程并不容易,我们必须同时介绍两种编程模式,即过程式编程(因为C++仍然包括C语言)和面向对象编程,因此就要在入门介绍中提供两方面的材料。我们在本书的前五章介绍原始数据类型、控制结构、函数、数组、指针和字符串等C语言知识,而在第6章到第15章介绍面向.
作者简介
  作者:DEITELHarveyM.Deitel,世界一流的计算机科学教员和研计会演讲人;PaulJ.Deitel,国际知名的教育家HarveyM.Deitel博士是Deitel&Associates公司总裁,有着40余年计算机领域的工作经验,进行了大量深入的教学研究,是世界一流的计算机科学教员和研计会演讲人。HarveyM.Deitel持有麻省理工学院学士、硕士学位和波士顿大学博士学位。他曾经在IBM和MIT的虚拟内存操作系统项目中从事研究工作,开发出在很多系统中广泛实现的技术。他还有20多年大学教学经验,取得过“教育特别津贴”。也是全球知名的计算机教材作者。其作品已被翻译成日、俄、中文(繁简)、韩、法、西班牙等语言。PaulJ.Deitel是Deitel&Associates公司执行副总裁,是麻省理工学院Sloun管理学校的毕业生。主修信息技术,通过Deitel&Associates公司他已经为DigitalEquipmentCorporation......等多家公司的客户提供Java、C和C++课程的教学活动,并曾为计算机协会波士顿分会授Java和C++语言,还通过卫星直播Java课程。VisualBasic.NET2003大学简明教程:实例程序设计>>更多作品
目录
第1章 计算机与C++编程简介
1.1 简介
1.2 什么是计算机
1.3 计算机组成
1.4 操作系统的变革
I.5 个人计算、分布式计算与客户/a匠务器计算
l. 6 机器语言、汇编语言和高级语言
1.7 C语言与C++的历史
1.8 C++标准库
1.9 Java、Internet与万维网
1.10 其他高级语言
1.11 结构化编程
1.12 典型C++环境基础
1.13 C++与本书的一般说明
1.14 C++编程简介
1.15 简单程序:打印一行文本
1.16 简单程序:两个整数相加
1.17 内存的概念
1.18 算术运算
1.19 判断:相等与关系运算符
1.20 新型头文件与名字空间
1.21 有关对象的思考
小结
术语
自测练习
自测练习答案
练习
第2章 控制结构
2.1 简介
2.2 算法
2.3 伪代码
2.4 控制结构
2.5 if选择结构
2.6 if/e1se选择结构
2.7 while重复结构
2.8 构造算法:实例研究1(计数器控制重复)
2.9 构造算法与自上而下逐步完善:实例研究2(标记控制重复)
2.10 构造算法与自上而下逐步完善:实例研究3(嵌套控制结构)
2.11 赋值运算符
2.12 自增和自减运算符
2.13 计数器控制循环的要点
2.14 for重复结构
2.15 for结构使用举例
2.16 switch多项选择结构
2.17 do/while重复结构
2.18 break和continue语句
2.19 逻辑运算符
2.20 混淆相等(.==)与赋值(=)运算符
2.21 结构化编程小结
2.22 有关对象的思考:确定问题中的对象
小结
术语
自测练习
自测练习答案
练习
第3章 函数
3.1 简介
3.2 C++程序组件
3.3 数学函数库
3.4 函数
3.5 函数定义
3.6 函数原型
3.7 头文件
3.8 随机数产生器
3.9 案例:机会游戏与enum简介
3.10 存储类
3.11 作用域规则
3.12 递归
3.13 使用递归举例:Fibonacci数列
3.14 递归与迭代
3.15 带空参数表的函数
3.16 内联函数
3.17 引用与引用参数
3.18 默认参数
3.19 一元作用域运算符
3.20 函数重载
3.21 函数模板
3.22 有关对象的思考:确定对象属性
小结
术语
自测练习
自测练习答案
练习
第4章 数组
4.1 简介
4.2 数组
4.3 声明数组
4.4 使用数组的举例
4.5 将数组传递给函数
4.6 排序数组
4.7 实例研究:用数组计算平均值、中数和模
4.8 查找数组:线性查找与折半查找
4.9 多下标数组
4.10 有关对象的思考:确定类的行为
小结
术语
自测练习
自测练习答案
练习
递归练习
第5章 指针与字符串
5.1 简介
5.2 指针变量的声明与初始化
5.3 指针运算符
5.4 按引用调用函数
5.5 指针与常量限定符
5.6 按引用调用的冒泡排序
5.7 指针表达式与指针算法
5.8 指针与数组的关系
5.9 指针数组
5.10 实例研究:洗牌与发牌
5.11 函数指针
5.12 字符与字符串处理简介
5.12.1 字符与字符串基础
5.12.2 字符串处理库的字符串操作函数
5.13 有关对象的思考:对象间的交互
小结
术语
自测练习
自测练习答案
练习
特殊小节:建立自己的计算机
更多的指针练习
字符串操作练习
特殊小节:高级字符串操作练习
复杂字符串操作练习
第6章 类与数据抽象(一)
6.1 简介
6.2 结构定义
6.3 访问结构成员
6.4 用struct实现用户自定义类型Time
6.5 用类实现Time抽象数据类型
6.6 类范围与访问类成员
6.7 接口与实现方法的分离
6.8 控制对成员的访问
6.9 访问函数与工具函数
6.10 初始化类对象:构造函数
6.11 在构造函数中使用默认参数
6.12 使用析构函数
6.13 何时调用构造函数与析构函数
6.14 使用数据成员和成员函数
6.15 微妙的陷阱:返回对Private数据成员的引用
6.16 通过默认的成员复制进行赋值
6.17 软件复用性
6.18 有关对象的思考:编写电梯模拟程序的类
小结
术语
自测练习
自测练习答案
练习
第7章 类与数据抽象(二)
7. 1 简介
7.2 const(常量)对象与const成员函数
7.3 复合:把对象作为类成员
7.4 友元函数与友元类
7.5 使用this指针
7.6 动态内存分配与new和delete运算符
7.7 static类成员
7.8 数据抽象与信息隐藏
7.8.1 范例:数组抽象数据类型
7.8.2 范例:字符串抽象数据类型
7.8.3 范例:队列抽象数据类型
7.9 容器类与迭代
7.10 代理类
7.11 有关对象的思考:在电梯模拟程序中使用复合和动态对象管理
小结
术语
自测练习
自测练习答案
练习
第8章 运算符重载
8.1 简介
8.2 运算符重载的基础
8.3 运算符重载的限制
8.4 用作类成员与友元函数的运算符函数
8.5 重载流插入与流读取运算符
8.6 重载一元运算符
8.7 重载二元运算符
8.8 实例研究:Array类
8.9 类型之间的转换
8.10 实例研究:String类
8.11 重载十十与——
8.12 实例研究:Date类
小结
术语
自测练习
自测练习答案
练习
第9章 继承
9.1 简介
9.2 继承:基类和派生类
9.3 Protected成员
9.4 把基类指针强制转换为派生类指针
9.5 使用成员函数
9.6 在派生类中重定义基类成员
9.7 Public、Protected和Private继承
9.8 直接基类和间接基类
9.9 在派生类中使用构造函数和析构函数
9.10 将派生类对象隐式转换为基类对象
9.11 关于继承的软件工程
9.12 复合与继承的比较
9.13 对象的“使用”关系和“知道”关系
9.14 实例研究:类Point、CircIe和Cylinder
9.15 多重继承
小结
术语
自测练习
自测练习答案
练习
第10章 虚函数和多态性
10.1 简介
10.2 类型域和switch语句
10.3 虚函数
10.4 抽象基类和具体类
10.5 多态性
10.6 实例研究:利用多态性的工资单系统
10.7 新类和动态关联
10.8 虚析构函数
10.9 实例研究:继承接口和实现
10.10 多态、虚函数和动态关联
小结
术语
自测练习
自测练习答案
练习
第11章 C++输入/输出流
11.1 简介
11.2 流
11.2.1 iosbeam类库的头文件
11.2.2 输入/输出流类和对象
11.3 输出流
11.3.1 流插入运算符
11.3. 2 连续使用流插入/流读取运算符
11.3.3 输出char类型的变量
11.3.4 用成员函数put输出字符和put函数的连续调用
11.4 输入流
11.4.1 流读取运算符
11.4.2 成员函数get和getline
11.4.3 istream类中的其他成员函数(Peek、Putback和ignore)
11.4.4 类型安全的I/0
11.5 成员函数read、gcount和write的无格式输人/输出
11.6 流操纵算子
11.6.1 整数流的基数:流操纵算子dec、oct、hex和setbase
11.6.2 设置浮点数精度(Precision、setprecision)
11.6.3 设置域宽(setw、width)
11.6.4 用户自定义的流操纵算子
11.7 流格式状态
11.7.1 格式状态标志
11.7.2 尾数零和十进制小数点(ios:showpoint)
11.7.3 对齐(ios::left、ios::right、ios::internal)
11.7.4 设置填充字符(fill、setfill)
11.7.5 整数流的基数:(ios::dec、ios::oct、ios::hex、ios::showbase)
11. 7.6 浮点数和科学记数法(ios::scientific、ios::fixed)
11.7.7 大/小写控制(ios:uppercase)
11.7.8 设置及清除格式标志(flags、setiosflags、resetiosflags)
11.8 流错误状态
11.9 把输出流连到输入流上
小结
术语
自测练习
自测练习答案
练习
第12章 模板
12.1 简介
12.2 函数模板
12.3 重载模板函数
12.4 类模板
12.5 类模板与非类型参数
12.6 模板与继承
12.7 模板与友元
12.8 模板与static成员
小结
术语
自测练习
自测练习答案
练习
第13章 异常处理
13.1 简介
13.2 何时使用异常处理
13.3 其他错误处理方法
13.4 C十十异常处理基础:try、throw、catch
13.5 简单异常处理例子:除数为o
13.6 抛出异常
13.7 捕获异常
13.8 再抛出异常
13.9 异常指定
13.10 处理意外异常
13.11 堆栈解退
13.12 构造函数、析构函数与异常处理
13.13 异常与继承
13.14 处理new故障
13.15 auto_ptr类与动态内存分配
13.16 标准库异常层次
小结
术语
自测练习
自测练习答案
练习
第14章 文件处理
14.1 简介
14.2 数据的层次
14.3 文件和流
14.4 建立顺序访问文件
14.5 读取顺序访问文件中的数据
14.6 更新顺序访问文件
14.7 随机访问文件
14.8 建立随机访问文件
14.9 向随机访问文件中随机地写入数据
14.10 从随机访问文件中顺序地读取数据
14.11 实例研究:事务处理程序
14.12 对象的输入/输出
小结
术语
自测练习
自测练习答案
练习
第15章 数据结构
15.1 简介
15.2 自引用类
15.3 动态内存分配
15.4 链表
15.5 堆栈
15.6 队列
15.7 树
小结
术语
自测练习
自测练习答案
练习
特殊小节:建立自己的编译器
第16章 位、字符、字符串和结构
16.1 简介
16.2 结构的定义
16.3 结构的初始化
16.4 函数和结构
16.5 类型定义:typedef
16. 6 范例:高效的洗牌和发牌模拟程序
16.7 位运算符
16.8 位段
16.9 字符处理库
16.10 字符串转换函数
16.11 字符串处理库中的查找函数
16.12 字符串处理库中的内存函数
16.13 字符串处理库中的其他函数
小结
术语
自测练习
自测练习答案
练习
第17章 预处理器
17.1 简介
17.2 预处理指令#include
17.3 预处理指令#define:符号常量
17.4 预处理指令#define:宏
17.5 条件编译
17.6 预处理指令#error和#pragma
17.7 运算符#和##
17.8 行号
17.9 预定义的符号常量
17.10 断言(宏assert)
小结
术语
自测练习
自测练习答案
练习
第18章 C语言遗留代码问题
18.1 简介
18.2 UNIX和DOS系统中的输入/输出重定向
18.3 变长参数表
18.4 使用命令行参数
18.5 对编译多个源文件程序的说明
18. 6 用edt和atexit终止程序的执行
18.7 volatile类型限定符
18.8 整数和浮点数常量的后缀
18.9 信号处理
18.10 动态内存分配:函数calloc和realloc
18.11 无条件转移:goto语句
18.12 联合体
18.13 连接指定
小结
术语
自测练习
自测练习答案
练习
第19章 string类与字符串流处理
19.1 简介
19.2 string的赋值与连接
19.3 比较string
19.4 子串
19.5 交换string
19.6 string的特性
19.7 寻找string中的字符
19.8 替换string中的字符
19.9 在string中插入字符
19.10 转换成C语言式char 字符串
19.11 迭代器
19.12 字符串流处理
小结
术语
自测练习
自测练习答案
练习
第20章 标准模板库(STL)
20.1 标准模板库(STL)简介
20.1.1 容器简介
20.1.2 迭代器简介
20.1.3 算法简介
20.2 顺序容器
20.2.1 vector顺序容器
20.2.2 1ist顺序容器
20.2.3 deque顺序容器
20.3 关联容器
20.3.1 multiset关联容器
20. 3.2 set关联容器
20.3.3 mdtimap关联容器
20.3.4 map关联容器
20.4 容器适配器
20.4.1 stack适配器
20.4.2 queue适配器
20.4.3 Priority_queue适配器
20.5 算法
20.5.1 fill、fill_n、generate与generate_n
20.5.2 equal、mismatch和1exicographical_compare
20.5.3 remove、remove_if、 remove_copy和remove_copy_if
20.5.4 replace、replace_if、replace_copy和replace_copy_if
20.5.5 数学算法
20.5.6 基本查找与排序算法
20.5.7 swap、iter_swap和swap_ranges
20.5.8 copy—backward、 merge、 unique和reverse
20.5.9 inplace_merge、 unique—copy和reverse—copy
20.5.10 集合操作
20.5.11 1ower—bound、 upper—bound和equal_range
20.5.12 堆排序
20.5.13 min和max
20.5.14 本章未介绍的算法
20.6 bitset类
20.7 函数对象
小结
术语
自测练习
自测练习答案
练习
Internet和World Wide Web中的STL资源
STL文献
第21章 ANSI/ISO C++标准语言补充
21.1 简介
21.2 bool数据类型
21.3 static—cast运算符
21.4 const—cast运算符
21.5 reinterpret—cast运算符
21.6 名字空间
21.7 运行时类型信息(RTTI)
21.8 运算符关键字
21.9 explicit构造函数
21.10 mutable类成员
21.11 类成员指针(.和—>)
21.12 多重继承与virtual基类
21.13 结束语
小结
术语
自测练习
自测练习答案
练习
附录A 运算符的优先级与结台律
附录B ASCII字符集
附录C 数值系统
附录D 有关C++的Internet与Web资源
参考文献
猜您喜欢

读书导航