目录 1
第一章 Borland C++ 3.1安装与使用 1
1.1 起步:安装Borland C++ 3.1 Application Frameworks 1
1.2 设置Borland C++ 3.1在硬盘中的目录 2
1.3 设置Borland C++ 3.1 Application Frameworks的安装 2
1.4 其它安装选项的设置 2
1.5 开始安装 3
1.6 进入Borland C++ 3.1 3
1.7 如何利用IDE来设计与编写程序 4
1.8 存储程序 5
1.9 执行程序 5
1.10 利用Project文件来编译并开发大型的应用程序 5
1.11 一些好用的功能 6
1.12 进入Windows 3.x 7
第二章 C++特性 31
2.1 注解(comments) 31
2.2 C++的简单输出与输入 32
2.3 C++的动态存储器分配 34
2.4 定义与声明 35
2.5 参考类型(reference type) 41
2.6 范围运算符(Scope resolution operator) 44
2.7 const变量 46
2.8 void指针 47
2.9 sizeof运算符 48
2.10 C++中所定义的与关键字 48
2.11 C++的结构(structure)数据类型 48
3.2 函数原型(function prototype) 53
3.1 前言 53
第三章 C++函数 53
3.3 为什么需要函数原型 54
3.4 函数信息的传递 57
3.5 Inline函数 79
3.6 Inline函数不是宏(Marcos) 82
3.7 函数缺省参数初值(Default Arguments) 83
3.8 函数名称的重载(Overloaded Function) 86
3.9 函数重载(Function Overloading)时可能发生的问题 89
3.10 函数指针(Pointers to functions) 90
3.11 小结 96
第四章 类与数据封装(Class Encapsulation) 97
4.1 什么是类(class) 97
4.2 什么是对象(object) 97
4.3 如何设计出一个类 98
4.4 Constructor构造函数 111
4.5 Destructor构造函数 113
4.6 成员初设序列(member initializer list) 116
4.7 Constructor与成员初设序列的深入探讨 122
4.8 Copy constructor复制建立者 127
4.9 一个特殊的类类型—Structure 138
4.10 小结 140
第五章 类的应用 141
5.1 类的友元(Friend Function) 141
5.2 类的静态成员(Static class members) 146
5.3 this指针 153
5.4 类成员指针(Pointers to Class Members) 160
5.5 类数组 168
5.6 面向对象程序开发 173
5.7 小结 177
第六章 运算符重载(Overloading Operators) 179
6.1 数据类型的转换 211
6.2 设计转换函数时容易发生的问题 224
6.3 小结 228
第七章 继承(Inheritance) 229
7.1 基础类与派生类(Base class derived class) 229
7.2 基础类下的数据隐藏 230
7.3 派生类的定义方法 243
7.4 公用(Public)基础类与私用(Private)基础类 244
7.5 派生类之数据成员与成员函数的定义与使用 245
7.6 继承下派生类的constructor的设计 249
7.7 派生类的constructor的进一步讨论 253
7.8 派生类的成员函数及数据成员与类范围的关系 259
7.9 Overriding functions并非overloading functions 272
7.10 类的friend没有被继承的性质 273
7.11 扩展您的程序 273
7.12 多重继承下的不确定性 287
7.13 小结 292
第八章 虚拟函数与多态性(Virtual function and Polymorphism) 293
8.1 派生类与基础类的转换 293
8.2 静态连结(Static Binding)与动态连结(Dynamic Binding) 297
8.3 虚拟函数(Virtual Function) 301
8.4 如何定义虚拟函数 306
8.5 虚拟函数的定义 308
8.6 虚拟函数的调用 310
8.7 虚拟函数与继承的关系 320
8.8 虚拟函数的数据封装 328
8.9 两个特殊的虚拟函数 331
8.10 虚拟destructor 336
8.11 另一种虚拟观念的应用——虚拟基础类(Virtual Base Class) 341
8.12 小结 351
第九章 再论C++的I/O(Input/Output) 353
9.1 iostream.h的内容 353
9.2 类ios的其他成员函数与Manipulators 369
9.3 其他的格式标志 372
9.4 派生类ostream与输出(Output) 375
9.5 派生类ostream中有关输出的其他成员函数 375
9.6 输出运算符<<的Overloading 377
9.7 派生类istream与输入(Input) 384
9.8 派生类istream中有关输入的其他成员函数 384
9.9 输入运算符>>的Overloading 386
9.11 ofstream与文件的输出 391
9.10 有关文件的I/O 391
9.12 ifstream与文件的读取 392
9.13 文件数据流的操作 392
第十章 Templates 413
10.1 Template函数 413
10.2 如何定义template函数 415
10.3 template函数的overloading 421
10.4 特殊状况的处理 424
10.5 多重类型参数 428
10.6 Template类 431
10.7 Template类的定义 431
10.8 Template类的friend函数 438
10.9 特殊化的tempate class 443
10.10 小结 445