本书是“从入门到精通”类图书。
本书全面介绍了Visual C++2005的开发环境,详细阐述了C++的语言基础以及面向对象编程的概念和方法,各章按照由浅入深、步步为营的方法进行讲述。书中包含大量的实例,通过对这些实例进行剖析,力求把一些编程方法和技巧形象化地呈献给读者。
本书对如何利用Visual Studio进行程序开发进行了全面细致的介绍。虽然ISO/ANSI C++仍然是许多专业人员的最爱,但C++/CLI以它独特的优越性使得它也成了基本的语言。因此,本书中包括这两种C++语言的基本内容,真正使读者朋友对Visual C++2005做到从入门到精通。
本书全面介绍了Visual C++ 2005的特点、使用方法及编程技巧,旨在提供Visual C++的“从入门到精通”式的综合性指南。其内容包Visual C++集成式编程环境,Visual Studio、Windows GUI编程,微软基础类、应用程序向导、类向导、类库和ActiveX控件的使用,以及文件访问和图形打印等。
本书为“从入门到精通”类图书,适合阅读的读者范围涵盖初学者到高级技术人员。
第1章 Visual Studio开发环境
1.1 Visual C++ 2005增加的新特性
1.1.1 C++/CLI
1.1.2 HelloWorld
1.2 MFC与SDK之间的关系
1.3 .NET Framework介绍
1.3. l .NET Framework
1.3.2 公共语言运行库概述
1.4 Visual Studio 2005开发环境介绍
1.4.1 配置设置
1.4.2 导入和导出设置
1.4.3 社区和帮助
l.4.4 代码编辑
1.5 创建项目
1.5.1 创建Win32控制台程序
1.5.2 创建Windows窗体应用程序
1.5.3 创建CLR控制台应用程序
1.5.4 创建MFC应用程序
小结
第2章 C++的特性
2.1 输入与輸出
2.2 注释语句
2.3 声明语句
2.4 作用域操作符
2.5 内联函数
2.6 缺省函数参数
2. 7 引用参数
2.8 Const限定符
2.9 函数重载
2.10 new和delete操作符
2.11 C++的模板
2.11.1 函数模板
2.11.2 类模板
小结
第3章 定义C++类
3.1 面向对象的概念
3. 1.1 类和对象
3.1. 2 类的特性
3.2 定义类
3.3 类的构成
3.4 成员函数的声明
3.5 对象的使用以及对成员的访问
3.6 结构与类的区别
3.7 构造函数和析构函数
3.7.1 构造函数
3.7.2 拷贝构造函数
3.7.3 析构函数
3.8 const对象和const成员函数
3.9 友元函数和友元类
3.9.1 友元函数
3.9.2 友元类
3.10 this指针
3.11 类的静态成员和静态成员函数
3.12 运算符重载
小结
第4章 C++的继承
4.1 继承的概念
4.2 继承的定义
4.3 继承的访问权限
4.4 派生类的构造函数和析构函数
4.5 多重继承
4.5.1 多重继承的二义性
4.5.2 虚继承
4.6 基类与派生类的转化
4.7 实现多态
4.7.1 虚函数
4.7.2 纯虚函数
小结
第5章 托管C++(Managed C++) 编程基础
5. 1 托管代码和非托管代码
5.2 托管基本类型
5.3 字符串
5.4 托管数组
5. 5 托管枚举类型、托管结构体类型
5.5.1 托管枚举类型
5.5.2 托管结构体类型
5.6 托管类
5.6.1 托管类定义
5.6.2 类的属性
5.6.3 类的方法重载
5.7 垃圾回收(Garbage Collection)
小结
第6章 利用VC++ 2005编写传统的Win32程序
6.1 编写程序
6.2 理解Windows应用程序
小结
第7章 利用MFC类库开发Windows应用程序
7.1 MFC类库简介
7.2 利用MFC编写Windows应用程序
7.3 分析基于MFC的Windows应用程序
7.3.1 入口函数AfxWinMain()
7.3.2 CMFCApp类
7.3.3 应用程序的启动
7.3.4 CMFCApp::InitInstance()
7.3.5 CMFCWindow类
7.3.6 CMFCWindow::OnPain()
7.3.7 消息映射
7.3.8 消息映射是如何工作的
7.4 利用MFC编写Windows控制台应用程序
7. 5 其他MFC的关键元素
7.5.1 MFC类库纵览
7.5.2 CObject类
7.5.3 从CObject派生类
7.5.4 MFC窗口类
小结
第8章 利用向导生成应用程序
8.1 生成SDI/MDI样式的Windows应用程序
8.2 生成一个基于对话框的Windows应用程序
8.3 理解应用程序向导生成的程序
8.3.1 理解SDI应用程序
8.3.2 理解MDI並用程序
8.3.3 理解基于对话框的应用程序
小结
第9章 对话框
9.1 对话框基础
9.2 创建对话框
9.2.1 创建对话框资源
9.2.2创建对话框类
9.2.3 创建并显示对话框
9.2.4 处理控件消息
9.3 话框的补充说明
9.3.1 对话框的初始化处理
9.3.2 对话框数据交换(DDX)支持
9.4 常用对话框
9.4.1 消息对话框
9.4.2 通用对话框
小结
第10章 丰富的用户界面
10.1 菜单
10.1.1 菜单项属性
10.1. 2 菜单命令消息函数
10.1.3 菜单命令更新
10.1.4 动态菜单操作
10.1.5 实现弹出式菜单
10.2 工具栏
10.2.1 工具栏编辑器
10.2.2 删除和添加工具栏按钮
10.2.3 工具栏的创建过程
10.3 状态栏
10.3.1 状态栏的创建
10.3.2 定制状态栏
小结
第11章 文档和视图
11.1 文档/视图之关系分析
11.1.1 应用程序对象与文档模板
11.1.2 文档模板与文档类
11.1.3 子框架窗口和视图的创建过程
11.1.4 文档与视图的关系
11.1.5 各种关系总结
11.2 实现一个简单的画图程序
11.2.1 建立工程
11.2.2 增加画图工具栏
11.2. 3 增加CCircle类
11.2.4 为文档添加圆的对象列表
11.2.5 在视图上画圆
11.2.6 设置圆的颜色
11.2.7 支持圆的选择和拖动
11.3 增加不同的视图
11.3.1 添加新的视图类CCircleDetailView
11.3.2 创建文档模板
11.3.3 创建新视图窗口
11.3.4 在新视图窗口中显示数据
11.4 对象序列化
11.4.1 序列化CCircle
11.4.2 序列化的实现细节
11.4.3 MFC框架的工作
11.5 打印支持
11.5.1 显示与打印的不一致
11.5.2 多页打印
11.5.3 MFC的打印过程
小结
第12章 多任务编程
12.1 多任务、进程与线程的基础知识
12.1. 1 为什么需要多任务、多线程
12.1.2 进程与线程的概念
12.1.3 多线程编程的困难
12.2 传统MFC中的进程与线程控制
12.2.1 MFC中的进程控制
12.2.2 MFC中的线程控制
12.3 传统MFC中的线程同步
12.3.1 临界区
12.3.2 互斥量
12.3.3 信号量
12.3.4 事件
12.3.5 互锁函数
12.3.6 等待函数
12.4 .NET Framework下的进程和线程编程控制
小结
第13章 WinSock网络编程
13.1 Intemet基础
13. 1.1 通信协议简介
13.1.2 网际协议(IP)
13.1.3 用户数据报协议
13.1.4 传输控制协议
13.2 WinSock API
13.2.1 使用Windows Sockets
13.2.2 WinSock通信程序开发的基本步骤
13.2.3 网络字节顺序
13.2.4 WinSock基本函数
13.2.5 WinSockAPI编程实例
13.3 MFC WinSock类及其应用
13.3.1 创建CAsyncSocket对象
13.3.2 CAsyncSocket对象的错误处理
13. 3.3 发送和接收数据报
13.3.4 套接字与服务器连接
13.3.5 服务器接受客户端的连接
13.3.6 发送并接收流式数据
13.3.7 关闭套接字
13.3.8 CSocket类
13.3.9 CSocket对象的创建
13.3.10 建立连接
13.3.11 发送并接收数据
13.3.12 关闭套接字
13.4 CAsyncSocket编程实例
13.4.1 客户端程序的编写
13.4.2 服务器端程序的编写
13.4.3 运行结果
13.5 托管代码中的网络编程
小结
第14章 动态链接库编程
14.1 动态链接库的基本概念
14.1.1 动态链接库的概念
14.1.2 动态链接库的类型
14.2 动态链接库文件的创建
14.2.1 动态链接库程序的入口点函数
14.2.2 动态链接库中数据和函数的导出
14. 3 动态链接库的加载
14.3.1 隐式链接
14.3.2 显式链接
14.4 动态链接库的创建和链接实例
14.4.1 MFC常规动态链接库的创建实例
14.4.2 动态链接库的链接实例
小结
第15章 数据库访问支持
15.1 Visual C++的ODBC类
15.1.1 CDatabase类
15.1.2 CRecordset类
15.1.3 CRecordView类
15.2 创建ODBC数据库应用程序
15.2.1 建立并注册数据源
15.2.2 创建基本数据库应用程序
15. 2.3 设计操作界面
15.2.4 实现添加和删除功能
15.2.5 实现排序和筛选功能
小结