《C++编程指南》求取 ⇩

引言1

第一部分 预备课程:C语言回顾7

第一章 C,C的变量、函数和表达式9

声明简单变量9

存储分类10

全局变量11

局部变量11

声明函数12

C的表达式13

运算符的优先级14

算术运算符14

位运算符15

逻辑运算符15

赋值运算符16

杂项运算符17

关于特殊运算符的考虑17

结束语18

第二章 C指针19

声明和使用简单指针19

指针的运算21

指针增量21

指针的其它运算22

数组和指针:我们能把它们联系在一起吗?22

向函数传递指针23

函数指针24

堆内存25

结束语26

第三章 用户自定义类型:C的结构27

C结构10127

C结构指针28

结构指针的运算29

使用结构指针29

结构和函数30

从堆中分配结构31

结束语31

预算程序的C版本:BUDGET1.C33

25分钟练习39

第二部分C++的非面向对象的特征43

第四章 进入C++45

我们是如何到达这里的?45

最初的年代(1950~1960)45

函数的年代(1960~1975)46

结构化的年代(1975~1990)46

面向对象的年代(1990~现在)46

为什么C要++?46

结束语47

第五章几个简单的问题49

新的注解风格49

为什么需要它?49

它怎样工作?49

在任何地方声明变量50

为什么需要它们?50

它们怎样工作?50

常数变量52

为什么需要它们?52

它们怎样工作?52

挥发性变量(Volatile Variables)54

为什么需要它们?54

它们怎样工作?55

引用类型说明符55

为什么需要它?56

它怎样工作?56

结束语58

第六章 声明函数59

函数原型59

为什么需要它们?60

为什么我喜欢编译器挑我的错?60

它们怎样工作?61

内联函数(Inline Functions)63

为什么需要它们?63

在C中我做不到吗?63

它们怎样工作?64

快了多少?65

函数重载66

为什么需要它?67

它怎样工作?67

什么可以作为“本质区别”?68

什么不足以区别重载函数?68

该做啥就做啥,但是别重组函数名69

函数的缺省变量70

为什么需要它们?71

它们怎样工作?71

和重载的冲突71

结束语72

第七章 I/O流73

在我有了printf()后,为什么还需要流?73

关于I/O流的案件:第一部分73

关于I/O流的案件:第二部分74

I/O流怎样工作?74

结束语76

把预算程序改写为C++程序:BUDGET2.CPP77

25分钟练习83

第三部分 类的入门87

第八章 面向对象的程序设计89

抽象和微波炉89

函数方法下的nachos制作90

面向对象方法下的nachos制作90

分类和微波炉91

函数的分类91

面向对象的分类91

为什么要分类?91

面向对象的程序设计和效率93

结束语94

第九章 在C++中加入类95

为什么把类增加到C++中?96

怎样把“类”加入C++中?96

命名成员函数97

在类中定义一个成员函数98

在类之后保持一个成员函数99

调用一个成员函数99

用指针调用成员函数100

在成员函数中访问成员101

重载成员函数102

结束语103

第十章 保护成员105

保护成员105

为什么需要它?105

它怎样工作?106

再谈为什么应该使用保护成员?107

类能够保护它的内部状态107

通过一个限制接口很容易使用类108

通过限制接口很容易支持类108

简单地说友元函数是什么?111

为什么需要友元函数?111

它们怎样工作?111

结束语113

第十一章 构造函数115

建立对象115

构造函数117

为什么需要它们?117

它们怎样工作?118

析构函数121

为什么需要它?121

它怎样工作?121

结束语123

第十二章 找出类125

面向对象的分析和设计125

一个分析问题和设计解决方案的例子126

快速分析和设计:一种结构化方法127

快速分析和设计:一种面向对象的方法127

一个对该问题的面向对象的解决129

结束语130

使用类的预算程序:BUDGET3.CPP131

25分钟练习137

第四部分 轻松自如地运用类143

第十三章 制作构造函数的参数145

带有参数的构造函数145

为什么需要它?146

它怎样工作?146

重载构造函数148

缺省的缺省构造函数150

构造类成员151

构造对象的顺序155

局部对象有序地进行构造156

静态对象只被构造一次156

所有全局对象在main()之前被构造156

构造全局对象无特殊顺序157

成员以其被声明的顺序进行构造158

析构函数以构造函数相反的顺序被调用158

结束语159

第十四章 更具有价值的新关键字161

新关键字:现在你可以不再使用malloc()和free()了161

为什么需要它们?161

它们怎样工作?162

分配数组162

结束语164

第十五章 拷贝构造函数165

拷贝构造函数165

为什么需要它?165

它怎样工作?166

自动拷贝构造函数167

浅拷贝对比深拷贝169

对临时对象还有很多要了解的东西171

结束语173

第十六章 改变对象的类型175

无名对象175

为什么需要它们?175

它们怎样工作?176

用构造函数进行类型转换177

结束语179

第十七章 静态成员181

静态数据成员181

为什么需要它们?181

它们怎样工作?182

访问静态数据成员182

静态数据成员的用途184

静态成员函数185

结束语187

维护一个更合理的预算:BUDGET4.CPP189

25分钟练习195

第五部分 继承199

第十八章 继承201

为什么需要继承?201

继承怎样工作?203

构造子类204

“有一个”关系205

结束语206

第十九章 虚成员函数207

为什么需要多态性?209

多态性怎样工作?210

用多态性方式制作Nacho211

什么时候虚函数不被多态地重载213

什么时候定义为“虚”的215

结束语216

第二十章 类分解和抽象类217

分解217

抽象类222

它们怎样工作?223

由一个抽象类制造出一个实在类(honest class)224

传递抽象类225

为什么需要纯虚函数?225

决定实时类型226

结束语229

用继承来改造Budget程序:BUDGET5.CPP231

25分钟练习237

第六部分 可选的特征247

第二十一章 多重继承249

多重继承如何工作?249

继承的模糊性250

虚拟继承251

构造多重继承的对象255

结束语,一个相反的建议255

第二十二章 访问控制说明符257

真正“专有的俱乐部”:私有成员257

什么时候用private,什么时候用protected?257

如何使用private?258

非公共继承258

什么条件下不是子类?261

结束语261

第二十三章 运算符重载263

为什么需要重载运算符?263

如何操作一个运算符函数和一个函数?264

这与重载运算符有什么关系?265

重载运算符是如何工作的?265

更详细看一看266

作为成员函数的运算符268

重载的另一个麻烦事情269

转换运算符271

结束语272

第二十四章 赋值运算符:273

为什么重载赋值运算符如此重要?273

如何重载赋值运算符?274

结束语275

第二十五章 I/O流277

流I/O如何工作?277

fstream子类278

strstream子类281

控制符281

一般插入运算符283

灵活的插入运算符285

结束语287

第二十六章 对象有效性和标志域289

用无效指针调用成员函数289

结果怎么样?290

如何对待无效指针?291

isLegal()还能干什么?293

结束语293

第七部分 进一步的说明295

第二十七章 避免在程序中出现错误的十种方法297

使所有的警告信息和错误信息开关有效297

使用STRICT编译298

坚持“干净的”编译298

采用清晰和一致的编码风格299

限制可见性300

使用标志域301

写代码时给出注释301

对每条路径至少单步跟踪一次301

不要重载运算符302

避免多重继承302

第二十八章 本书前面未包括的近十个C++特征303

模板303

异常处理304

运行时的类型标识(RTTI)305

名称空间305

重载new和delete305

String类305

指向成员运算符的指针—>*和.305

Intel 16位指针306

第二十九章 十个最重要的编译器开关(附加两个)307

内联(inline)函数的outline选项307

定义预处理符号308

在.obj中包括调试信息308

检查堆栈溢出309

存储器模式309

浮点类型的支持309

编译器优化310

使能异常/RTTI处理311

数据边界对准311

处理器支持312

标准堆栈结构312

预编译头文件312

附录 虚函数到底是如何工作的?313

v_table314

结束语316

词汇317

1996《C++编程指南》由于是年代较久的资料都绝版了,几乎不可能购买到实物。如果大家为了学习确实需要,可向博主求助其电子版PDF文件(由(美)(S.R.戴维斯)Stephen R.Davis著;卢 1996 北京:电子工业出版社 出版的版本) 。对合法合规的求助,我会当即受理并将下载地址发送给你。

高度相关资料

Visual C++ 5.0编程指南(1998 PDF版)
Visual C++ 5.0编程指南
1998 北京:国防工业出版社
Visual C++6.0编程指南(1999年05月第1版 PDF版)
Visual C++6.0编程指南
1999年05月第1版 科学出版社
Borland C++ 3.1 编程指南(1993年12月第1版 PDF版)
Borland C++ 3.1 编程指南
1993年12月第1版 清华大学出版社
TURBO C音乐编程指南(1994 PDF版)
TURBO C音乐编程指南
1994 北京希望电脑公司
Visual C++ 5.0编程指南(1998 PDF版)
Visual C++ 5.0编程指南
1998 北京:科学出版社
C语言结构化程序设计(1997 PDF版)
C语言结构化程序设计
1997 北京:机械工业出版社
C/C++程序初学者指南(1996 PDF版)
C/C++程序初学者指南
1996 北京:电子工业出版社
Borland C++多媒体编程指南(1996 PDF版)
Borland C++多媒体编程指南
1996 北京:电子工业出版社
Visual C++ 6.0编程指南(1999 PDF版)
Visual C++ 6.0编程指南
1999 北京:科学出版社
C++ Builder 3编程指南(1998 PDF版)
C++ Builder 3编程指南
1998 北京:人民邮电出版社
C++程序语言编写指南(1996 PDF版)
C++程序语言编写指南
1996 电子工业出版社;香港万里机构出版有限公司
Visual C++ 6.0编程指南(1999 PDF版)
Visual C++ 6.0编程指南
1999 北京:航空工业出版社
C语言编程员指南(1991 PDF版)
C语言编程员指南
1991 中国科学院希望高级电脑技术公司
Borland C++实用编程指南(1994 PDF版)
Borland C++实用编程指南
1994 北京:航空工业出版社
Visual C++5 ActiveX编程指南(1998 PDF版)
Visual C++5 ActiveX编程指南
1998 北京:清华大学出版社