内容简介
引言
第一部分 开始学习Visual C++2.0
第一章 Visual C++2.0编程环境
安装Microsoft Visual C++2.0
使用Visual工作平台
开始使用Visual工作平台
从Visual工作平台中取得求助
使用Visual工作平台菜单
用鼠标选择菜单
用键盘选择菜单
编辑程序
编辑、链接、运行程序
查阅
指定项目设置
用CL进行编译和链接
使用CL
调试
CL选项
小结
第二章 Visual C++2.0程序开发工具
LINK,链接器
使用LINK
LINK选项
LIB,库管理器
使用LIB
LIB选项和命令
NMAKE,程序维护工具
制作文件(Makefile)
运行NMAKE
小结
C程序结构
第三章 ANSI标准C要览
ANSI C中的Esc序列和三字母组合
预处理指令
包含文件
定义宏
条件指令
其它命令
变量的说明和定义
基本类型
枚举
结构体、联合体和位域
数组
指针
类型定义
类型限定符:const和volatile
表达式
操作符优先级
语句
break语句
case语句
复合语句或块
continue语句
default标号
do语句
表达式语句
for语句
goto语句
if语句
if_else语句
switch语句
面向对象设计和编程
return语句
空语句
while语句
函数
函数原型
void类型
自变量数目可变的函数
ANSI C库
小结
第四章 Visual C++2.0对标准C的扩展
Visual C++2.0独有的关键词
在C和C++中嵌入汇编语言代码
预定义全局变量和预处理器宏
编译指令(Pragmas)
基本数据类型的字节数大小和容量
小结
第二部分 面向对象编程
什么是面向对象编程?
第五章 面向对象编程基础
面向过程编程
C中的一个例子
添加一个新的形状
面向对象编程术语
数据抽象
对象、类和方法
继承
多重继承
多态性
C中的面向对象编程
在C中定义对象
实现几何形状
使用形状
添加新形状对象
在C中利用OOP所出现的问题
小结
第六章 C++和面向对象编程
用C++进行面向对象编程
C++中的数据抽象
使用File类
C++类中的继承
多态性和动态绑定
在C++中讨论几何形状
shape类
添加一个新的shape类
实时创建对象
小结
第三部分 学习C++
第七章 C++和ANSI标准C
C++的特征
C++中函数的新特征
默认自变量
重载函数名
内插函数
友元(friend)函数
引用(reference)类型作为自变量
重载操作符
C++中的数据说明
C++与C之间的区别
新的保留关键词
函数原型
const变量
void指针
字符数组的初始化
sizeof操作符
enum的范畴
对goto的限制
小结
C++I/O库
第八章 标准I/O的C++类
C++中的流I/O
使用iostream
使用操纵符
为格式I/O使用操纵符
控制浮点格式
重载〈〈
iostream类层次
文件I/O
简单文件I/O
在文件中定位
字符串I/O
写入到字符串
从字符串中读取
小结
类作为对象
第九章 用类创建对象
用户定义数据类型
类成员的存取控制
public函数可以返回private值
成员函数
实现类
头文件
实现与接口分离
使用类
动态创建对象
在自由堆上分配对象数组
调用成员函数
使用静态(static)成员变量
初始化静态成员变量
使用static成员函数
使用类成员的指针
小结
第十章 对对象定义的操作
自变量和返回值
理解指针和引用
值传递与引用传递
返回引用
使用引用的准则
String类的构造函数和析构函数
创建和舍弃对象
默认构造函数
拷贝构造函数
何时提供拷贝构造函数
成员初始化表
嵌套类说明
利用构造函数和析构函数的副作用
定义函数和操作符
this指向类的实例
this指针
操作符作为函数
为String类定义operator+
验证字符串的等同性
存取和更改一个字符串中的个别字符
定义类型转换操作符
为String类定义赋值操作符
为什么operator=返回引用
重载输入和输出操作符
重载操作符new和delete
使用friend类
使用文件作为数组
小结
继承性可表示“是一种”关系
第十一章 在C++中使用继承
派生类
继承可以扩展类
派生类的语法
对基类的存取
使用继承创建SubString类
派生类的其它方面
多重继承
ostream使用多重继承
虚基类
使用继承
链表
single_link类
双向链表
小结
静态绑定
第十二章 虚函数和多态性
绑定
动态绑定
虚函数
纯虚函数
virtual函数以及具体实现
通过virtual函数进行动态绑定
使用多态性
类多态性使用的含义
虚析构函数
在基类构造函数中调用虚函数
小结
第十三章 C++高级话题
模板
用于int和float的堆栈
类模板
函数模板
成员函数模板
模板的优点
异常处理
异常处理的优点
使用setjmp和longjmp遇到的问题
C++的异常处理机制
特殊函数
小结
第四部分 在C++中应用OOP技术
C和C++之间的链接
类型安全链接
函数名编码的影响
第十四章 在C++中使用C库
C链接指令
使用ANSI标准C库
与其它语言的链接
ANSI C库的总体功能
标准I/O函数
过程控制函数
变长度自变量表
内存分配
数据转换
数学运算函数
字符分类
字符串和缓冲区操纵
C和C++中的字符串
搜索和排序
日期和时间
编译器特定的库
小结
组织C++类
第十五章 在C++中创建类库
单一继承下的继承层次
类中的主从关系
默认和拷贝构造函数
与C++类的公共接口
拷贝对象
析构函数
赋值操作符
输入和输出函数
小结
第十六章 使用MFC3.0中的通用类
MFC3.0中的通用类概述
基本数据类型
文件I/O类
对象群
来自Cobject的共同功能
实时类标识
持久性
诊断服务
MFC3.0中的异常处理
小结
第五部分 Windows编程
第十七章 用Visual C++2.0和MFC3.0进行Windows编程
利用MFC3.0进行Windows编程
模型_视图_控制器(MVC)结构
使用MFC3.0的Windows应用程序
用于创建应用程序的工具
利用MFC AppWizard创建应用程序
利用ClassWizard定制应用程序
小结
第十八章 使用MFC3.0中的Windows编程类
MFC3.0Windows编程类一瞥
应用程序框架类
菜单
Microsoft Windows窗口类型
图形设备接口对象
设备上下文类
基本Windows数据类型
探讨Windows编程类
使用控件类
使用对话框
使用工具条和状态条
使用MDI窗口类
操纵菜单
小结
第十九章 利用MFC3.0进行图形编程
Windows图形设备接口
设备上下文
GDI坐标系统
利用GDI函数绘制图形
画点
画直线
绘制封闭图形
操纵矩形
区域
绘制模式
处理颜色
系统调色板
逻辑调色板
创建并使用逻辑调色板
操纵逻辑调色板
处理调色板消息
位图
DDB
DIB
小结
简单的文本输出
第二十章 在窗口中显示文本
使用字体
字符集
字体类型
字体系列
取得有关字体的信息
创建字体
列出所有可利用的字体
FontSee——一个列举字体的例子
为FontSee说明类
实现FontSee中的类
运行FontSee
小结
理解图像文件格式
图像文件的共同特点
第二十一章 在窗口中显示位图
某些常见的图像文件格式
用于处理图像文件的C++类
ImageData类
Image类
BMPImage类
PCXImage类
TIFIMage类
ImageView一个Windows图像察看器
运行ImageView
ImageViewApp类
ImageViewFrame和ImageViewWindow类
小精灵动画
擦除和重画技术
创建ImageView
sprite类
脱离屏幕的位图技术
用于小精灵动画的C++类
SpriteAnimation类
一个样本动画程序
AnimationWindow类
ANIMATE应用程序
客户区域鼠标消息
创建ANIMATE.EXE
小结
第二十二章 处理鼠标和键盘事件
键盘消息
输入聚焦
处理按键
WM_CHAR消息
脱字号
鼠标消息
处理鼠标的移动
控制光标形状
TextIn—一个文本录入程序
Caret类
其它TextIn类
运行TextIn
小结
第二十三章 在Windows中打印
在AppWizard产生的应用程序中进行打印
OnDraw函数
AppWizard产生的简单程序
打印对话框
在其它MFC应用程序中进行打印
ImagePrint—一个例子程序
小结
创建求助文件
第二十四章 使用Windows求助系统
给一个应用程序添加求助功能
一个简单的求助文件
显示求助文件
AppWizard产生的应用程序中的求助
创建默认的求助文件
察看默认的求助文件
小结
第六部分 高级Windows编程
第二十五章 多媒体和游戏编程
媒体播放器
Windows下的声音
声音类型
播放波形声音
MCL命令字符串和命令消息接口
播放AVI文件
Windows下的影像
PLAYAVI程序
Windows游戏编程
计算机游戏要览
计算机游戏中的共同主题
计算机游戏的共同组元
小结
第二十六章 创建和使用动态链接库(DLL)
什么是DLL?
静态链接
动态链接
Windows中的DLL
从16位到32位Windows中DLL的变化
一个号码服务器DLL
为Win32创建DLL
在Visual C++2.0中创建NEXTNUM.DLL
一个测试客户机程序
在DLL中使用MFC类
与MFC库的静态链接
与MFC DLL进行动态链接
小结
第二十七章 使用动态数据交换(DDE)
什么是DDE?
利用DDEML进行DDE编程
DDE术语
DDE会晤中的事件序列
DDEML函数
利用DDEML的样本应用程序
从DDE服务器取得数据
添加新的程序组
小结
第二十八章 利用MFC3.0进行OLE2.0编程
什么是OLE?
OLE 1.0
OLE 2.0
注册数据库
MFC 3.0中的OLE类
利用MFC AppWizard创建OLE应用程序
创建OLE包容器应用程序
AppWizard产生的包容器
定制包容器
创建OLE服务器应用程序
时间标记(Timestamp)服务器
测试时间标标记(Timestamp)服务器
创建OLE自动服务器
状态显示自动服务器
利用DISPTEST测试自动服务器
小结
第二十九章 创建OLE定制控制构件(OCX)
什么是OLE定制控制构件(OCX)
OCX属性
OCX结构
OLE定制控制构件开发工具(CDK)
安装CDK
MFC OLE控制构件类
创建OCX
ControlWizard产生的OCX
定制OCX
小结
第三十章 当今Windows编程需考虑的问题
32位编程
将16位的MFC应用程序移植到32位的Windows中
某些移植提示
Windows NT中的新特征
Windows NT3.5 中利用OpenGL绘制三维图形
OpenGL要览
像素格式
演示上下文
OpenGL编程
一个样本OpenGL程序
小结
第七部分 扩展VisualC++2.0
第三十一章 使用MFC 3.0数据库类进行ODBC编程
ODBC和数据库
ODBC和关系数据库模型
SQL和调用级别接口
ODBC要览
ODBC一致性级别
ODBC API
ODBC应用程序所完成步骤
从MFC应用程序调用ODBC API
MFC 3.0数据库类
数据库要览
利用MFC AppWizard创建数据库应用程序
DBMFC_察看数据库中的记录
小结
第三十二章 利用Vicual C++ 2.0进行网络编程
Windows NT网络编程
网络编程模型
网络协议
Windows NT网络模型
Windows NT中的网络编程API
Windows Sockets API
基本嵌套字
盘存Windows Sockets API
Windows Sockets编程
确定主系统和服务
Windows Sockets样本应用程序
DAYTIME——一个简单的客户机应用程序
客户机_服务器消息传递
小结
文献信息
C++和面向对象编程
ANSI标准C
Visual C++和Windows编程
图像和动画
OLE编程