您的浏览器不支持JavaScript,请开启后继续
C++面向对象程序设计

C++面向对象程序设计

  • 作者
  • 李素若、任正云、张牧、陈万华 编著

本书直接介绍面向对象的程序设计,并贯穿始终,力求让读者尽快地建立起面向对象编程的思想。读者阅读本书后不仅学会一门程序设计语言,还能初步掌握面向对象的程序设计方法。 在本书的编写中,编者结合自己的教学和编程实践经验,力图用生动、通俗易懂的语言并结合编程实例来讲解各个知识点,便于读者理解和掌握。 为了方便学生上机实践,本书还专门设计了10套上机实验题,供...


  • ¥29.00

ISBN: 978-7-122-02912-6

版次: 1

出版时间: 2008-07-01

图书介绍

ISBN:978-7-122-02912-6

语种:

开本:16

出版时间:2008-07-01

装帧:平装

页数:300

图书前言

随着面向程序设计方法的不断普及和应用,学习和掌握C++语言已经成为许多计算机专业工作者和广大计算机应用人员的迫切需要。学好C++,可以很容易地触类旁通其他语言,如Java和C#等。C++架起了通向强大、易用、真正的软件开发应用的桥梁。
 C++语言是在C语言基础上扩充了面向对象机制而形成的一种面向对象程序设计语言,它除了继承了C语言的全部优点和功能外,还支持面向对象程序设计。C++现在已成为介绍面向对象程序的首选语言。学习C++不仅可以深刻理解和领会面向对象程序设计的特点和风格,掌握其方法和要领,而且可以使读者掌握一种十分流行和实用的程序设计    语言。
 本书首先介绍了面向对象程序设计理论的基本概念,让读者从理论上理解面向对象程序设计与结构化程序设计的不同之处,然后介绍C++对C语言的扩充,最后介绍了C++面向对象程序设计的基本方法。本书直接介绍面向对象的程序设计,并贯穿始终,力求让读者尽快地建立起面向对象编程的思想。读者阅读本书后不仅学会一门程序设计语言,还能初步掌握面向对象的程序设计方法。
 在本书的编写中,编者结合自己的教学和编程实践经验,力图用生动、通俗易懂的语言并结合编程实例来讲解各个知识点,便于读者理解和掌握。本书主要内容包括:面向对象程序设计的基本概念,C++对C语言在非面向对象方面的扩充,类和对象的定义和应用,以及使用过程中应注意问题,在C++中怎样实现面向对象的三大特性:封装性、继承性和多态性,C++模板和C++的输入和输出等。另外,为了方便学生上机实践,本书还专门设计了10套上机实验题,供读者上机练习,还讨论了Visual C++集成开发环境的组成、编      译和运行C++程序的方法、程序调试技术。本书中的所有例子都已用Visual C++6.0调试    通过。
 本书主要由李素若主编并统稿,第1、2、5、10、11章及附录由李素若编写,第3、4章由任正云编写,第6、7章由张牧编写,第8、9章由陈万华编写。
 由于编者水平有限,加之时间仓促,书中难免有不足之处,敬请广大读者批评指正,以使本书质量得到进一步提高。
 编 者
 2008年3月

精彩书摘

本书直接介绍面向对象的程序设计,并贯穿始终,力求让读者尽快地建立起面向对象编程的思想。读者阅读本书后不仅学会一门程序设计语言,还能初步掌握面向对象的程序设计方法。
  在本书的编写中,编者结合自己的教学和编程实践经验,力图用生动、通俗易懂的语言并结合编程实例来讲解各个知识点,便于读者理解和掌握。
  为了方便学生上机实践,本书还专门设计了10套上机实验题,供读者上机练习,还讨论了VisuaI C++集成开发环境的组成、编译和运行C++程序的方法、程序调试技术。本书中的所有例子都已用Visual C++6.0调试通过。

目录

第1章 面向对象程序设计概述	1
 1.1 什么是面向对象程序设计	1
1.1.1 新的程序设计范型	1
1.1.2 面向对象程序设计基本概念	1
1.1.3 面向对象程序设计的基本特征	4
 1.2 为什么要使用面向对象程序设计	7
1.2.1 传统程序设计方法的局限性	7
1.2.2 面向对象程序设计的主要优点	9
 1.3 面向对象程序设计的语言	10
1.3.1 面向对象程序设计语言的发展概况	10
1.3.2 几种典型的面向对象程序设计语言	12
 本章小结	13
 习题	13
第2章 C++的初步知识	14
 2.1 C++发展历程和特点	14
2.1.1 C++发展历程	14
2.1.2 C++的特点	15
 2.2 简单的C++程序	15
2.2.1 一个简单的C++示例程序	15
2.2.2 C++程序的结构特点	16
 2.3 C++对C的扩充	17
2.3.1 注释与继续行	17
2.3.2 C++的输入输出流	18
2.3.3 用const定义常变量	21
2.3.4 函数原型声明	24
2.3.5 函数重载	24
2.3.6 函数模板	27
2.3.7 带有缺省参数的函数	29
2.3.8 变量的引用	31
2.3.9 内联函数	39
2.3.10 作用域标示符“∷”	41
2.3.11 字符串变量	42
2.3.12 new和delete	45
 2.4 C++编写和实现	46
 2.5 关于C++上机实践	48
 本章小结	48
 习题	49
第3章 类和对象	53
 3.1 类	53
3.1.1 从结构到类	53
3.1.2 类定义的形式	55
3.1.3 成员函数的调用	59
3.1.4 保护成员	63
 3.2 类与对象	66
 3.3 构造函数和析构函数	68
3.3.1 构造函数	68
3.3.2 析构函数	73
3.3.3 带参数的构造函数	76
3.3.4 拷贝构造函数	79
3.3.5 浅拷贝与深拷贝	81
 3.4 对象的生存期	84
 本章小结	86
 习题	87
第4章 类和对象深入讨论	91
 4.1 自引用指针this	91
 4.2 对象数组与对象指针	94
4.2.1 对象数组	94
4.2.2 对象指针	97
4.2.3 指向类的成员的指针	99
 4.3 向函数传递对象	102
4.3.1 使用对象作为函数参数	102
4.3.2 使用对象指针作为函数参数	103
4.3.3 使用对象引用作为函数参数	104
 4.4 静态成员	105
4.4.1 静态成员的需要性	105
4.4.2 静态成员的使用	106
4.4.3 静态数据成员	109
4.4.4 静态成员函数	112
 4.5 友元	116
4.5.1 需要友元的原因	116
4.5.2 友元的使用	119
 4.6 对象成员	121
 4.7 常类型	126
4.7.1 常引用	126
4.7.2 常对象	127
4.7.3 常对象成员	128
 4.8 C++程序的多文件组成	131
 本章小结	133
 习题	133
第5章 继承与派生	136
 5.1 继承与派生类的概念	136
5.1.1 为什么要使用继承	136
5.1.2 派生类的声明	137
5.1.3 派生类生成过程	138
 5.2 派生类成员的访问属性	139
5.2.1 公有继承	140
5.2.2 私有继承	142
5.2.3 保护继承	145
5.2.4 总结	147
 5.3 派生类构造函数和析构函数	148
5.3.1 派生类构造函数	148
5.3.2 派生类析构函数	152
 5.4 多继承	154
5.4.1 多继承声明	154
5.4.2 多继承的构造函数和析构函数	155
5.4.3 派生类重载基类成员和二义性问题	158
 5.5 虚基类	162
5.5.1 虚基类的概念	162
5.5.2 虚基类的初始化	164
5.5.3 虚基类应用举例	165
 5.6 子对象与父对象赋值兼容	167
 5.7 继承与组合	170
 本章小结	172
 习题	173
第6章 多态性与虚函数	178
 6.1 多态性概述	178
 6.2 子类型	180
6.2.1 子类型及多态指针和多态引用	180
6.2.2 多态程序	182
 6.3 静态束定、动态束定和虚函数	182
6.3.1 静态束定	182
6.3.2 动态束定与虚函数	184
6.3.3 关于虚函数的进一步讨论	186
 6.4 纯虚函数与抽象类	191
6.4.1 纯虚函数	191
6.4.2 抽象类	193
 本章小结	198
 习题	199
第7章 运算符重载	200
 7.1 运算符重载概念	200
 7.2 重载运算符的一般原则	201
 7.3 几个主要运算符的重载	202
7.3.1 加减运算符的重载	202
7.3.2 增量运算符的重载	204
7.3.3 转换运算符的重载	207
7.3.4 赋值运算符的重载	209
7.3.5 下标运算符的重载	211
7.3.6 函数调用运算符的重载	212
 本章小结	213
 习题	213
第8章 模板	215
 8.1 模板的概念	215
 8.2 函数模板与模板函数	216
8.2.1 函数模板的说明	217
8.2.2 函数模板的使用	217
8.2.3 用户定义的参数类型	220
8.2.4 函数模板的异常处理	221
 8.3 类模板与模板类	223
 8.4 程序举例	228
 本章小结	232
 习题	233
第9章 C++的输入和输出	235
 9.1 C++为何建立自己的输入输出系统	235
 9.2 C++的流库及其基本结构	236
9.2.1 C++的流	236
9.2.2 流类库	237
 9.3 预定义类型的输入输出	239
9.3.1 无格式输入输出	240
9.3.2 格式化输入输出	242
 9.4 用户自定义类型的输入输出	249
9.4.1 重载输出运算符“<<”	249
9.4.2 重载输入运算符“>>”	251
 9.5 文件的输入输出	252
9.5.1 文件的打开与关闭	252
9.5.2 文件的读写	255
 9.6 程序举例	261
 本章小结	263
 习题	264
第10章 上机实验题	265
 10.1 实验一 熟悉实验环境	265
 10.2 实验二 C++基础练习	265
 10.3 实验三 类与对象(一)	266
 10.4 实验四 类与对象(二)	267
 10.5 实验五 派生类与继承	267
 10.6 实验六 虚函数与多态性	268
 10.7 实验七 函数模板与类模板	269
 10.8 实验八 输入输出的格式控制	269
 10.9 实验九 文件的输入与输出	270
 10.10 实验十 综合练习	271
第11章 Visual C++ 6.0上机操作	272
 11.1 Visual C++集成开发环境的组成	272
11.1.1 Visual C++用户界面	272
11.1.2 工具栏	273
11.1.3 菜单栏	277
 11.2 编辑、编译和运行C++程序	283
11.2.1 建立、编译和运行一个简单C++程序	283
11.2.2 一个项目包含头文件和C++程序	284
11.2.3 一个工作区包含多个项目	285
 11.3 程序调试	287
11.3.1 程序执行到中途暂停以便观察阶段性结果	287
11.3.2 设置需观察的结果变量	288
11.3.3 单步执行	288
11.3.4 断点的使用	288
11.3.5 停止调试	289
附录	290
 附录A C++语言运算符的优先级和结合性	290
 附录B ASCII码表	290
参考文献	291

发送电子邮件联系我们