图书介绍
面向对象Visual C++编程技巧【2025|PDF下载-Epub版本|mobi电子书|kindle百度云盘下载】

- (美)(M.安德鲁斯)Mark Andrews著;綦建平等译 著
- 出版社: 北京:电子工业出版社
- ISBN:7505337742
- 出版时间:1997
- 标注页数:652页
- 文件大小:38MB
- 文件页数:675页
- 主题词:
PDF下载
下载说明
面向对象Visual C++编程技巧PDF格式电子书版下载
下载的文件为RAR压缩包。需要使用解压软件进行解压得到PDF格式图书。建议使用BT下载工具Free Download Manager进行下载,简称FDM(免费,没有广告,支持多平台)。本站资源全部打包为BT种子。所以需要使用专业的BT下载软件进行下载。如BitComet qBittorrent uTorrent等BT下载工具。迅雷目前由于本站不是热门资源。不推荐使用!后期资源热门了。安装了迅雷也可以迅雷进行下载!
(文件页数 要大于 标注页数,上中下等多册电子书除外)
注意:本站所有压缩包均有解压码: 点击下载压缩包解压工具
图书目录
引言1
第一部分 Visual C++1
第一章 Microsoft Visual C++1
关于Visual C++1
目 录1
Visual C++的其它特点2
The Visual Work bench编辑器2
标准版和专业版5
安装Visual C++需做哪些准备6
安装Visual C++6
单步和多步安装7
The Visual Work bench7
使用Visual C++8
编写一个Visual C++程序9
关于Quick Win9
Visual C++的project10
建立一个Quick Win示例程序11
小结14
C++发展简史15
第二章 良好的C++15
学习C++语言16
C++的注解行19
一个较好的办法19
C语言和C++的混合注释19
关键字20
C++的关键字:完整的关键字表20
Visual C++中未实现的关键字22
Visual C++独有的关键字23
标识符24
数据类型25
类25
字符型25
整型26
浮点型26
聚合数据类型27
结构30
联合33
指针类型35
Void类型36
引用类型36
typedef说明语句38
小结39
第三章类型限定语40
const限定语40
const限定语的使用40
C语言和C++中的const对象41
使用const限定语的优点41
用函数初始化一个const42
const对象的新特点42
const对象的增强性能42
返回const对象的函数43
把一个const数组传递给函数43
const修饰语如何工作44
修改一个const对象的链接44
在指针说明语句中使用一个const44
使用带指针的常量45
何时常量不是const?45
在哪里放置一个const46
指向一个const的地址46
指向const对象的const指针47
Volatile限定语47
Volatile限定语的作用47
说明一个对象既是const又是Volatile48
小结48
第四章变量49
C++中的变量说明49
初始化与赋值50
初始化一个const51
初始化外部数据51
初始化常量和引用51
初始化一个引用51
函数形式的初始化52
引用54
定义引用54
引用的作用能力56
初始化引用56
用作别名的引用57
利用值来传递自变量59
把引用作为参数传递给函数59
利用地址传递自变量60
利用引用传递自变量61
如何不使用引用62
访问被引用结构的元素62
编写一个返回引用的函数63
使用对Const对象的引用65
小结65
存储类66
外部存储类66
第五章变量的特性66
静态存储类67
作用域69
局部作用域69
函数作用域70
文件作用域70
原型作用域71
解决标识符名字中的冲突71
作用域的优先级71
作用域分解运算符72
说明的位置72
生存期73
链接73
小结74
第六章函数75
main()函数75
定义一个函数76
c++形式的函数定义77
函数原型的例子78
函数原型78
建立函数原型的规则79
重载函数80
使用函数重载80
名字mangling81
lnline函数81
缺省的函数自变量82
可变的自变量表83
C语言中可变的自变量表83
C++中可变的自变量表83
编写可变的自变量表84
STDARG.H函数85
给函数传递自变量…………………………………………………………………………………(8?)维护传递函数数据的安全性………………………………………………………………………把一个自变量说明为一个常量87
调用函数来初始化常量88
小结89
第七章编译Visual C++程序90
建立一个Visual C++程序90
加快编译速度91
使用预编译的文件91
编译一个Visual C++程序91
使用快速编译选项92
使用Disk-caching程序92
使用RAM程序92
标识符92
把程序编译成P代码92
C和C++编译程序93
利用Visual Workbench编译程序93
New Project对话框94
Project Options对话框95
Quick Win程序和其它应用95
把系统配置成适于使用命令行编译98
Visual C++预处理器99
头文件100
头文件的使用100
头文件的内容101
头文件的嵌套101
带括号〈 〉和引号“”的#include指令101
预编译的头文件和预编译的文件102
预处理器如何找到头文件102
#define指令103
用#define建立常量104
#define指令的局限性104
用#define建立宏105
条件编译指令106
用编译指令来写注释107
#if指令107
#else和#elif指令108
#ifdef和#else指令的组合108
Charizing109
其它的预处理指令109
Visual C++预处理器的特性109
Stringizing110
Token合并111
三字符组的替换113
预定义的宏113
小结114
建立一个project115
Linker按钮115
第八章链接Visual C++程序115
使用Linker Options对话框116
获得命令行选项的帮助信息117
链接一个C++程序117
Visual C++提供的库117
C++与其它语言的混合118
名字mangling119
可供选择的链接说明119
extern关键字119
函数修饰语120
链接说明的影响力120
C语言调用规范121
Pascal/FORTRAN调用规范122
寄存器调用规范123
——asm修饰语123
第九章存储管理125
关于本章125
分段存储126
分段存储的工作原理126
near调用和far调用127
存储段和段边界127
80×86芯片的段寄存器127
段如何进行覆盖128
段:偏移量寻址128
存储模式128
实模式128
保护模式129
标准模式和增强模式129
标准模式129
存储模型的机理130
增强模式130
存储模型130
存储模型与指针131
覆盖和MOVE实用程序131
存储模型的判断132
使用存储模型的优点132
六个存储模型133
Tiny存储模型133
Small存储模型133
Huge存储模型134
near指针134
关于Visual C++中指针的使用134
Medium存储模型134
Large存储模型134
Compact存储模型134
far指针135
huge指针135
new操作符的实现方法136
new和delete操作符136
指向未说明的数据类型的指针136
指向void的指针136
给存储空间初始化一个值137
new操作符的使用137
给数组分配存储空间139
交互地分配存储空间139
给无定长的数组分配存储空间140
释放分配给数组的存储空间140
通过调用函数分配存储空间141
低级存储条件的处理142
delete操作符的使用142
_set_new handler()函数143
new如何分配存储空间144
near,far和基本存储空间144
重载new和delete操作符144
operator new()和operator delete()函数144
size_t类型146
给new操作符增加参数146
重载_set_new_handler()147
使用new修改存储池(memory pools)147
保存和恢复一个新的handler148
恢复_set_new_handler()的缺省行为148
可修改的_set_new_handler()函数148
Windows环境下的存储管理148
Windows系统的工作情况149
Windows和段寄存器149
描述符150
小结151
关于OOP153
容易误解的概念153
第二部分面向对象的程序设计153
第十章面向对象的程序设计153
OOP的争议点154
OOP的原理154
OOP是如何开始的155
从COBOL到Simula155
C++的出台155
代码重用156
C++的益处156
C++程序设计的技巧与宗旨157
华尔街(Wall Street)的模拟158
一个工厂的仿真158
项目(projects)规划中的问题160
C++的词典160
C++的特性162
数据封装与数据抽象163
多重继承164
继承性164
多形性165
C++程序的组成元素167
类和对象167
成员变量168
成员函数168
小结168
第十一章类170
struct性能的增强170
对一个struct中的数据的访问限制171
在struct中保存一个函数171
C++风格的struct171
从struct到class172
例示(initiating)一个对象173
对象例示的图例173
访问类的成员173
成员函数174
域分解操作符175
访问限定语175
类和对象176
类的图解181
Zalthar程序中的数据抽象182
抽象类183
类的细化(subclassing)183
虚函数185
另外一个程序例子188
类库190
小结191
第十二章对象192
从结构到对象192
C语言结构的缺点194
对象的使用195
如何建立对象195
初始化对象的两种方法195
定义一个对象的内容195
构造函数196
析构函数201
成员变量201
指向成员变量的指针201
成员变量数组204
静态成员变量206
常量型成员变量206
静态成员函数213
为对象分配存储空间213
动态地分配存储空间214
框架分配215
堆分配216
访问对象的成员217
在函数头中使用(::)操作符219
封装(Encapsulation)222
访问限定语222
对访问限定语的解释224
使用访问限定语224
public访问限定语225
private访问限定语225
protected访问限定语226
公用的派生类和私有派生类226
公用的派生(public Derivation)226
建立一个类的多个对象227
建立对象数组227
私有的派生(private Derivation)227
建立指向对象的指针数组231
设计类的技术233
嵌套类233
复合类234
局部类235
友元类(friend class)236
不完全类说明236
空类237
this指针238
具有静态生存周期的对象238
具有外链接的对象238
对象的作用域和链接238
小结240
第十三章成员函数241
成员函数的功能241
成员函数的种类241
访问成员函数241
说明和定义成员函数243
指定成员函数的返回值244
const和volatile关键字245
具有常量型this指针的成员函数246
具有可变的this指针的成员函数247
静态和非静态的成员函数249
inline成员函数249
inline成员函数的工作过程251
访问一个inline成员函数251
inline成员函数和栈252
重载成员函数252
虚函数和多形性253
超越(overriding)成员函数253
虚函数253
纯虚函数254
友元(friend)254
friend关键字254
友元类和友元函数256
建立友元类之间的联系桥梁(Bridge)257
使用“桥”(bridge)函数的另一种选择形式259
静态成员函数260
static关键字266
初始化一个静态成员变量267
使用静态成员函数267
指向成员函数的指针268
使用指向普通函数的指针268
使用指向成员函数的指针269
指向成员函数的指针数组270
指向静态成员函数的指针272
小结273
两类构造函数275
建立构造函数275
第十四章构造函数和析构函数275
建立无构造函数的对象277
析构函数277
安全地使用析构函数277
如何调用析构函数278
使用析构函数278
析构的序278
构造函数的工作过程279
Zalthar程序中的析构函数279
构造函数的种类280
调用一个构造函数282
调用构造函数的其它方法282
使用构造函数的基本规则283
使用构造函数的优点283
构造函数有助于存储管理284
构造函数可以进行初始化和对值进行检查284
转换构造函数和复制构造函数286
用构造函数初始化变量286
缺省的构造函数288
何时调用缺省的构造函数289
构造函数重载289
调用一个缺省的构造函数289
使用构造函数290
具有多个构造函数的类294
构造的顺序295
在warrior程序中调用构造函数296
构造一个const对象296
按顺序的构造296
小结298
第十五章函数重载299
函数重载的原理299
函数重载的基本规则300
自变量匹配301
自变量匹配的工作原理304
自变量匹配的步骤304
函数重载和作用域307
重载构造函数308
派生类中的重载函数309
重载虚函数310
作用域分解操作符310
重载静态成员函数311
转换函数312
小结314
第十六章操作符重载315
操作符重载的工作原理315
操作符重载的一个例子315
编写操作符重载函数316
算术操作中使用操作符重载316
操作符重载函数的作用域317
操作符重载函数的格式317
重载一元和二元操作符317
可被重载的操作符318
操作符重载:秘密与技巧318
不可重载的操作符319
C++如何实现操作符重载320
操作符重载的规则321
重载++和--操作符322
重载操作符的成员函数322
重载二元操作符+和-325
重载+=操作符327
重载=操作符329
重载关系操作符345
重载[ ]操作符347
重载( )操作符350
重载&操作符351
重载->操作符352
重载数据类型357
重载new和delete358
重载new和delete的规则360
非成员的重载函数361
编写一个非成员的操作符重载函数362
一个操作符重载的友元函数363
另一个操作符重载友元函数365
小结367
第十七章转换函数368
转换函数的工作过程368
函数风格的casts(造型)369
造型(Casting)369
造型带来的麻烦369
使用函数风格的casts370
函数风格casts的使用规则370
转换用户自定义的数据类型370
转换构造函数371
为转换函数定义一个类373
定义一个转换构造函数373
把一个变量转换成一个具有多个元素的类374
一个更高级的转换函数376
把一个变元转换成一个多元素的类377
TIME.H库中的函数377
转换构造函数的执行步骤378
成员转换函数379
编写一个成员转换函数379
成员转换函数的操作过程380
使用成员转换函数381
成员转换函数示例382
小结384
1705.CPP程序中使用的数据类型384
第十八章复制对象385
复制构造函数和Operator=函数385
编写一个Operator=函数386
调用一个复制函数386
举例说明析构的问题387
编写一个复制构造函数389
operator=函数的工作过程392
strcpy()函数394
复制串394
此程序的工作过程398
给串分配存储空间398
存储分配的另一种选择399
在Zalthar程序中增加一个串类399
新的Zalthar程序的工作过程404
串类(sting classes)405
串类的功能405
使用重载的赋值操作符406
赋值操作符重载406
用复制构造函数初始化一个串对象406
使用串类406
小结407
第十九章继承性与多形性408
派生类408
使用派生类的理由408
使用派生类的好处409
新的Zalthar程序的层次结构414
构造函数和析构函数的继承原则415
通过指针来访问对象417
虚函数418
调用虚函数418
纯虚函数418
超越虚函数421
域分解操作符422
虚函数如何实现422
虚函数:正论与反论424
多重继承性424
多重继承性图解424
动物王国里的多重继承性425
虚基类427
继承链中的函数名冲突428
小结430
第二十章流(streams)431
iostream类是如何实现的431
iostream库433
与流相关的头文件433
Microsoft iostream类库433
ios类和它的子类434
iostream的层次结构434
使用流437
流中的混合数据类型438
格式化输出439
setw设备操作符444
设置补白字符(padding characters)445
cin〉〉和cout〈〈的多种选择形式445
cin〈〈的操作符的多种选择形式446
cout〈〈操作符的多种选择形式449
重载〉〉操作符450
重载〈〈和〉〉450
重载〈〈操作符450
文件的输入/输出(I/O)451
打开,使用和关闭一个流文件452
文件流452
Of stream和ifstream类452
fstream类453
小结457
第二十一章 The Microsoft Foundation Classes(MFC)459
第三部分MFC库459
多种用途的类460
Cobject类461
使用Cobject类的优点461
串行化(serialization)462
DYNACREATE宏467
DYNAMIC宏467
诊断帮助468
异常处理471
其它的MFC类472
文件类473
收集(collection)类474
CString类475
与时间相关的类475
程序范例476
程序范例的层次结构476
编译程序范例477
运行程序范例478
小结497
消息驱动的(message-driven)程序499
Visual Workbench的组成部分499
第二十二章 The Visual Workbench499
C++程序的层次结构500
Win Main()函数501
文档和视图501
Visual Workbench的工具503
App Wizard504
App Studio508
建立人物对话框的工作过程513
ClassWizard的工作原理515
使用ClassWizard515
ClassWizard窗口515
命令联编(binding)517
建立对话框517
程序范例520
小结562
第二十三章窗口和视图564
文档和视图的实现原理565
CDocument类的特征565
使用文档566
CView类的特征566
Visual C++中Windows(窗口)的工作机理567
Windows的类567
CWnd类568
Windows的五个大类568
对话框576
CDialog类576
对话框的工作原理577
按照旧的方式检索数据580
小结581
第二十四章Visual C++的图形582
CDC类582
CDC的子类583
CGdiObject类583
使用CDC和CGdiObject类584
名字的含义584
在Visual C++中创建图形584
OnPaint()函数和OnDraw()函数586
Visual C++图形的建立步骤586
OnDraw()函数的使用步骤587
用CDC和GDI对象画出文本588
创建和删除图形对象588
图形对象的单步创建过程589
图形对象的两步建立过程589
在Visual C++中使用位图590
创建一个位图对象590
画不规则形状593
画出Zalthar程序中的游戏人物594
动画596
Zalthar:最后一幕598
小结639
附录A ASCII码表641
附录B 80×86芯片家族643
8086和8088处理器643
8086,8088和实模式643
段:偏移量寻址的机理643
段寄存器和偏移量寄存器644
段:偏移量寻址中存在的模糊性645
段:偏移量寻址:一个更复杂的例子645
80286微处理器647
保护模式和段:偏移量寻址647
386处理器648
386的保护模式648
虚拟8086模式649
486处理器649
在C++程序中使用指针649
参考文献651
热门推荐
- 1047137.html
- 771983.html
- 3069400.html
- 2916708.html
- 2326872.html
- 1148404.html
- 2131691.html
- 3433888.html
- 431432.html
- 1166285.html
- http://www.ickdjs.cc/book_343305.html
- http://www.ickdjs.cc/book_1322513.html
- http://www.ickdjs.cc/book_452389.html
- http://www.ickdjs.cc/book_2237529.html
- http://www.ickdjs.cc/book_925898.html
- http://www.ickdjs.cc/book_3591985.html
- http://www.ickdjs.cc/book_2261727.html
- http://www.ickdjs.cc/book_3823713.html
- http://www.ickdjs.cc/book_1015806.html
- http://www.ickdjs.cc/book_2404576.html