第一章 如何在C+++中使用C库 1
1.1 C与C+++的链接 1
1.1.1 类型安全链接 1
1.1.2 函数名编码的影响 1
1.1.3 C的链接命令 2
1.1.4 与其他语言的链接 4
1.2 如何使用ANSI标准C库 5
1.2.1 ANSI C库功能概述 5
1.2.2 标准I/O函数 5
1.2.3 进程控制函数 6
1.2.4 内存分配技术 8
1.2.5 可变长度参数表 9
1.2.6 数据转换函数 10
1.2.7 数学函数 11
1.2.10 C和C+++中的字符串 12
1.2.9 字符串和缓冲区操作 12
1.2.8 字符分类 12
1.2.11 查找和分类 14
1.2.12 日期和时间 17
1.2.13 DataTime类 18
1.3 编译器指定的库 20
1.4 小结 20
第二章 在C+++中建立类库 21
2.1 在C+++中建立类库 21
2.1.1 如何组织C+++类 21
2.1.2 单继承下的继承层次 21
2.1.3 类之间的客户-服务器关系 24
2.2 C+++类的公共接口 28
2.2.1 缺省构造函数和拷贝构造函数 28
2.2.5 输入输出函数 29
2.2.4 赋值操作符 29
2.2.3 析构函数 29
2.2.2 拷贝对象 29
2.3 小结 30
第三章 使用Microsoft Foundation Class库 31
3.1 用Microsoft Foundation Class设计Microsoft Windows程序 31
3.1.1 模块显示控制(MVC)文档 31
3.1.2 使用MFC的一个Windows应用程序 33
3.2 Microsoft Foundation Class的层次 42
3.2.1 类层次的分解 42
3.2.2 Microsoft Foundation Class库中的归档和异常处理 44
3.3 小结 45
第四章 用C+++建立MS-DOS应用程序 47
4.1 Forms软件包简介 47
4.2.1 文件头 48
6.5.1 CObDblQueue类的声明方法 1 48
4.2 表格的存储和检索技术 48
4.3 表格的组成 51
4.3.1 FormBackground类 52
4.3.2 FieldList类 53
4.3.3 Field类 58
4.4 显示表格 60
4.4.1 TextGraphics类的层次 60
4.4.2 基于字符的图形 65
4.4.3 OutputDevice类 68
4.5 Form类 70
4.6 创建表格 76
4.6.1 定义表格 76
4.6.2 建立FORMDEF 79
4.6.3 运行FORMDEF 80
4.6.4 创建表格数据 80
4.6.5 建立FORMDAT 81
4.7.1 FormView类 82
4.7 填写表格 82
4.7.2 EventHandler类 86
4.7.3 FORMFILL程序实例 88
4.7.4 建立FORMFILL 89
4.8 小结 90
第五章 用AppWizard创建C+++ Windows应用程序 91
5.1 如何启动AppWizard 92
5.1.1 为应用程序定制选项 93
5.1.2 AppWizard创建的类 96
5.1.3 AppWizard创建了什么 97
5.2 如何使用表格文档模板 99
5.2.1 基于编辑-视图的文档应用程序 100
5.2.2 基于表格的文档应用程序 100
5.3 如何创建FormFill的模板 100
5.3.1 如何创建表格的布局 102
5.3.3 表格变量的使用 104
5.3.2 如何创建视图类 104
5.4 如何设置文档模板 109
5.5 如何覆盖成员函数 111
5.5.1 如何覆盖OnUpdata成员 111
5.5.2 如何修改其他成员 112
5.6 如何提供多文档模板 113
5.6.1 相同文档的两个视图 114
5.7 完成FormFill的操作 115
5.7.1 增加文件输入/输出功能 115
5.7.2 选取一个给定的记录 115
5.7.3 其他功能说明 115
5.8 小结 115
6.1 TEMPLDEF实用程序 116
第六章 建立模板文件 116
6.2 通用队列类模板 117
6.3 建立int型队列类 123
6.3.1 批处理文件MAKETMPL.BAT 123
6.3.2 头文件INT.HPP 123
6.3.3 INT.CPP文件 124
6.3.4 测试INTQUE.EXE 128
6.4 建立字符串队列类 136
6.4.1 STRING.HPP头文件 136
6.4.2 STRING.CPP源文件 137
6.4.3 测试STRQUE.EXE 141
6.5 CObList类的用法 148
6.5.2 测试CSTRQUE.EXE 149
6.6 小结 157
7.1.1 在运行时识别类 158
第七章 Microsoft基础类 158
7.1 CObject类的通用功能 158
7.1.2 持久性概念 159
7.1.3 诊断服务 160
7.2 通用Microsoft基础类说明 161
7.2.1 MFC的基本数据类型 162
7.2.2 对象集 162
7.2.3 Microsoft基础类中的异常处理机制 163
7.2.4 用于文件I/O的基础类 167
7.2.5 诊断支持 167
7.3 Windows程序设计类简介 168
7.3.1 应用程序类 169
7.3.2 菜单 169
7.3.3 Microsoft Windows的窗口类型 169
7.3.4 设备环境类简介 171
7.3.5 用于对象链接和嵌入(OLE)的类 172
7.3.6 基本Windows数据类型 173
第八章 全局变量、宏和全局函数 174
8.1 全局变量、通用宏和全局函数 174
8.1.1 全局变量 174
8.1.2 通用宏 175
8.1.3 全局函数 178
8.2 用于Windows程序设计的宏和全局函数 183
8.2.1 全局变量 183
8.2.2 宏 184
8.2.3 全局函数 202
第九章 类参考 205
9.1 通用类参考 205
9.1.1 CArchive 205
9.1.2 CArchiveException 207
9.1.3 CByteArray 208
9.1.4 CDumpContext 209
9.1.5 CDWordArray 210
9.1.6 CException 211
9.1.7 CFile 212
9.1.8 CFileException 216
9.1.9 CFileStatus 217
9.1.10 CMapPtrToPtr 218
9.1.11 CMapPtrToWord 219
9.1.12 CMapStringToOb 220
9.1.13 CMapStringToPtr 222
9.1.14 CMapStringToString 223
9.1.15 CMapWordToOb 224
9.1.16 CMapWordToPtr 225
9.1.17 CMemFile 226
9.1.18 CMemoryException 227
9.1.19 CMemoryState 228
9.1.20 CNotSupportedException 229
9.1.21 CObArray 229
9.1.22 CObject 231
9.1.23 COblist 233
9.1.24 COleException 236
9.1.25 CPtrArray 237
9.1.26 CPtrList 238
9.1.27 CResourceException 239
9.1.28 CRuntimeClass 240
9.1.29 CSharedFile 240
9.1.30 CStdioFile 241
9.1.31 CString 242
9.1.32 CStringArray 247
9.1.33 CStringList 248
9.1.34 CTime 250
9.1.35 CTimeSpan 252
9.1.36 CUIntArray 253
9.1.37 CUserException 254
9.1.38 CWordArray 255
9.2 用于设计Windows程序的类参考 256
9.2.1 CBitmap 256
9.2.2 CBitmapButton 258
9.2.3 CBrush 260
9.2.4 CButton 261
9.2.5 CClientDC 263
9.2.6 CCmdTarget 264
9.2.7 CCmdUI 265
9.2.8 CColorDialog 266
9.2.9 CComboBox 267
9.2.10 CControlBar 271
9.2.11 CDataExchange 272
9.2.12 CDC 273
9.2.13 CDialog 293
9.2.14 CDialogBar 294
9.2.15 CDocItem 295
9.2.16 CDocTemplate 296
9.2.17 CDocument 298
9.2.18 CDumpContext 300
9.2.19 CEdit 302
9.2.20 CEditView 305
9.2.21 CException 309
9.2.22 CFile 309
9.2.23 CFileDialog 313
9.2.24 CFileException 315
9.2.25 CFindReplaceDialog 316
9.2.26 CFont 319
9.2.27 CFontDialog 321
9.2.28 CFormView 322
9.2.29 CFrameWnd 323
9.2.30 CGdiObject 325
9.2.31 CHEdit 325
9.2.32 CListBox 328
9.2.33 CMDIChildWnd 333
9.2.34 CMDIFrameWnd 334
9.2.35 CMemFile 337
9.2.36 CMemoryException 338
9.2.37 CMemoryState 338
9.2.38 CMenu 340
9.2.39 CMetaFileDC 344
9.2.40 CNotSupportedException 345
9.2.42 CObject 346
9.2.41 CModalDilaog 346
9.2.43 CObList 348
9.2.44 COleClientDoc 350
9.2.45 COleClientItem 352
9.2.46 COleDocument 358
9.2.47 COleException 359
9.2.48 COleServer 361
9.2.49 COleServerDoc 363
9.2.50 COleServerItem 365
9.2.51 CPaintDC 367
9.2.52 CPalette 368
9.2.53 CPen 370
9.2.54 CPoint 371
9.2.55 CPreviewView 372
9.2.56 CPrintDialog 373
9.2.57 CRect 375
9.2.58 CResourceException 376
9.2.59 CRgn 377
9.2.60 CScrollBar 380
9.2.61 CScrollView 381
9.2.62 CSize 383
9.2.63 CSplitterWnd 384
9.2.64 CStatic 386
9.2.65 CStatusBar 387
9.2.66 CToolBar 389
9.2.67 CVBControl 391
9.2.68 CView 395
9.2.69 CWinApp 398
9.2.70 CWindowDC 401
9.2.71 CWnd 402