注册 | 登录读书好,好读书,读好书!
读书网-DuShu.com
当前位置: 首页出版图书科学技术计算机/网络软件与程序设计C/C++及其相关Visual C++ 6.0完全自学宝典

Visual C++ 6.0完全自学宝典

Visual C++ 6.0完全自学宝典

定 价:¥68.00

作 者: 朱洪波 编著
出版社: 清华大学出版社
丛编项: 程序员完全自学宝典
标 签: VC++

购买这本书可以去


ISBN: 9787302175964 出版时间: 2008-07-01 包装: 平装
开本: 16开 页数: 610 字数:  

内容简介

  Visual C++ 6.0是微软公司为程序人员提供的Visual Studio 6.0工具套件中的重要组成部分。本书由浅入深地介绍使用Visual C++ 6.0进行Windows应用程序开发的一般过程和方法,既包含相关的理论讲解,又安排相应的实例作为补充,以期从理论和实践两个方面帮助读者了解相关的知识,并掌握相关的技能。全书分为5篇,其中第1篇介绍使用Visual C++ 6.0进行Windows应用程序开发所应该具备的基础知识。第2篇和第3篇是本书的主要内容,分别介绍常见的应用程序开发和高级的应用程序开发。第4篇作为补充性的内容,介绍Visual C++ 6.0常用的数据结构,此外还介绍常用的调试技巧和编程技巧等。最后一篇是实例篇,通过一个非常完整的实例,复习前面所学知识,并锻炼读者的动手和思考能力。与同类书籍相比,本书的内容十分丰富,除了涵盖常见知识点,本书还尽可能地穿插介绍一些有益于读者掌握的Windows编程知识。此外,本书介绍了一些在工程中经常使用的工具、编程技巧等。全书将理论和实践有机地结合起来穿插在全书的各个章节进行讲解,以帮助读者更好地掌握相关知识。本书适合Visual C++ 6.0初学者、C++自学者和一些想学习C++的其他开发人员阅读,也可作为高级开发人员的参考资料。

作者简介

暂缺《Visual C++ 6.0完全自学宝典》作者简介

图书目录

第1篇 C++程序设计语言入门
 第1章 C++程序设计语言概述
  1.1 C++和C#、Java的区别
   1.1.1 面向对象还是面向过程
   1.1.2 内存管理是否自动释放
   1.1.3 是否跨平台
   1.1.4 C++与其他语言的主要区别
  1.2 C++语言的主要应用领域
  1.3 C++的开发工具以及Visual C++ 6.0
   1.3.1 Visual C++ 6.0开发工具简介
   1.3.2 Visual C++ 6.0的开发过程
 第2章 Visual C++ 6.0入门
  2.1 安装Visual C++ 6.0
   2.1.1 对硬件的要求
   2.1.2 安装Visual C++ 6.0
   2.1.3 安装MSDN Library
   2.1.4 安装源代码管理器
   2.1.5 完成安装
   2.1.6 安装Visual C++ 6.0开发插件
   2.1.7 编写宏文件
   2.1.8 使用宏文件
  2.2 Visual C++ 6.0开发环境介绍
   2.2.1 熟悉Visual C++ 6.0开发环境
   2.2.2 建立一个工程
   2.2.3 工程菜单
   2.2.4 编译菜单
   2.2.5 Tools菜单
   2.2.6 工具条
  2.3 创建第一个Visual C++程序
   2.3.1 编写代码
   2.3.2 编译程序
   2.3.3 运行程序
  2.4 使用源代码管理器
   2.4.1 基本概念
   2.4.2 创建数据库
   2.4.3 根据现有工程在服务端创建文件夹
   2.4.4 代码入库和出库
   2.4.5 版本控制(Label)
  2.5 常见问题
   2.5.1 必须安装和Visual C++ 6.0配套发行的MSDN Library吗
   2.5.2 可以在Visual C++ 6.0下使用其他的C++编译器吗
 第3章 C++基础语法
  3.1 变量和常量
  3.2 C++基础数据类型
   3.2.1 整值类型
   3.2.2 浮点值类型
   3.2.3 布尔类型
   3.2.4 字符串类型
  3.3 C++高级数据类型
   3.3.1 枚举类型
   3.3.2 结构类型
   3.3.3 联合类型
   3.3.4 数组类型
  3.4 指针和引用
   3.4.1 指针变量的声明与初始化
   3.4.2 指针运算符:&
   3.4.3 指针运算符:*
   3.4.4 指针运算符:::
   3.4.5 指针运算
   3.4.6 指针与常量限定符
   3.4.7 指针与数组
   3.4.8 引用
  3.5 表达式和运算符
   3.5.1 表达式的定义
   3.5.2 基本运算符
   3.5.3 逻辑运算操作符
   3.5.4 ==、>、>=、<、<=、!=运算符
   3.5.5 ++、--操作符
   3.5.6 位操作符
   3.5.7 new/delete操作符
  3.6 程序控制结构
   3.6.1 switch/case结构
   3.6.2 if/else/else if结构
   3.6.3 goto语句
   3.6.4 for循环语句
   3.6.5 while与do/while循环语句
   3.6.6 break语句
   3.6.7 continue语句
  3.7 函数
   3.7.1 函数的定义
   3.7.2 函数的返回类型
   3.7.3 函数的参数
   3.7.4 参数传递
   3.7.5 函数的默认参数
  3.8 常见问题
   3.8.1 new/delete操作符和malloc/free函数有何区别
   3.8.2 应该使用const修饰符还是宏
 第4章 C++面向对象编程
  4.1 类的基本概念和特性
   4.1.1 类和结构
   4.1.2 类的数据成员
   4.1.3 类的成员函数
   4.1.4 类成员访问级别
   4.1.5 类声明、类定义和类实现
   4.1.6 类的内联函数和非内联函数
   4.1.7 构造函数
   4.1.8 析构函数
   4.1.9 this指针
   4.1.10 友元
   4.1.11 静态成员
  4.2 类的派生和继承
   4.2.1 public继承
   4.2.2 protected继承
   4.2.3 private继承
  4.3 常见问题
   4.3.1 析构函数是否可以定义为虚函数,有何用处
   4.3.2 在C++中struct被赋予了哪些类的特征
 第5章 异常及其处理
  5.1 异常的产生
  5.2 异常的处理
  5.3 深入了解异常
   5.3.1 异常的再抛出
   5.3.2 异常的参数传递
  5.4 Visual C++ 6.0中的异常
   5.4.1 关键字_try/_except/_finally
   5.4.2 TRY/CATCH宏
  5.5 常见问题
   5.5.1 应该怎样设计异常
   5.5.2 如何避免使用异常
第2篇 使用Visual C++ 6.0进行常用开发
 第6章 Visual C++ 6.0开发起步
  6.1 Windows消息机制
   6.1.1 什么是消息
   6.1.2 消息的分类
   6.1.3 消息的处理过程
  6.2 Win32 API介绍
   6.2.1 API的分类
   6.2.2 API的用途
   6.2.3 在Visual C++ 6.0中使用Win32 API
  6.3 MFC介绍
   6.3.1 MFC的来源和用途
   6.3.2 MFC的基本框架结构
   6.3.3 使用MFC
  6.4 常见问题
   6.4.1 如何自定义消息
   6.4.2 Win32 API定义了哪些数据类型
   6.4.3 Visual C++、Win32 API和MFC之间的关系
   6.4.4 使用C++开发Windows应用程序必须使用Win32 API或者MFC吗
 第7章 开发基于对话框的应用程序
  7.1 使用向导生成应用程序框架
   7.1.1 建立基于对话框的应用程序框架
   7.1.2 控件
  7.2 基于对话框的程序基本框架
   7.2.1 应用程序的入口函数
   7.2.2 MFC应用程序的入口点
   7.2.3 CDemo1App类解析
   7.2.4 CDemo1Dlg类框架解析
   7.2.5 CDemo1Dlg类解析
  7.3 实现数据交互
   7.3.1 使用类向导编辑控件属性
   7.3.2 使用类向导实现数据交互
  7.4 实现消息映射
   7.4.1 消息的分类
   7.4.2 消息的处理
   7.4.3 处理【OK】按钮单击事件
   7.4.4 程序实现
   7.4.5 自定义控件
  7.5 实战:简易计算器
   7.5.1 程序界面设计
   7.5.2 简易计算器的业务逻辑
   7.5.3 简易计算器的状态
   7.5.4 简易计算器的实现
  7.6 常见问题
   7.6.1 如何响应自定义消息
   7.6.2 如何在窗体中使用定时器
 第8章 文档/视图结构
  8.1 基础知识
   8.1.1 单文档视图和多文档视图结构
   8.1.2 文件类型
   8.1.3 使用向导生成一个简单的记事本
  8.2 单文档/视图结构
   8.2.1 CDocViewApp应用程序类解析
   8.2.2 修改CDocViewApp类使得程序支持多种文件类型
   8.2.3 CMainFrame框架类解析
   8.2.4 CDocViewDoc文档类解析
   8.2.5 CDocViewView视图类解析
8.3 多文档/视图结构
  8.4 实战:使用单文档/视图结构实现八数码游戏
   8.4.1 需求分析
   8.4.2 设计并实现操作接口的主框架
   8.4.3 设计并实现棋盘数据结构
   8.4.4 在CEightDoc类中添加棋盘类的对象
   8.4.5 在CMainFrame类中实现对棋盘的控制
   8.4.6 在CEightView类中实现对棋盘的控制
   8.4.7 在CEightView类中实现对棋盘的绘制
   8.4.8 实现智能解题
  8.5 常见问题
   8.5.1 CFrameWnd、CView、CDocument是如何协作的
   8.5.2 MFC中包含了哪些CView的派生类
 第9章 使用Visual C++ 6.0开发动态链接库
  9.1 动态链接库基础
   9.1.1 创建静态链接库
   9.1.2 使用静态链接库
   9.1.3 创建简单的动态链接库
   9.1.4 使用动态链接库
   9.1.5 动态链接库和静态链接库的比较
   9.1.6 规则DLL和扩展DLL
  9.2 开发Win32动态链接库
   9.2.1 动态链接库的初始化和反初始化
   9.2.2 导出、导入函数和数据
  9.3 开发基于MFC的动态链接库
   9.3.1 创建链接MFC的规则DLL
   9.3.2 MFC扩展 DLL
  9.4 实战:使用动态链接库实现界面和功能实现的分离
9.5 常见问题
   9.5.1 AFX_MANAGE_STATE宏有何作用,何时需要使用该宏
   9.5.2 MFCDLL能导出C++类、成员函数吗
   9.5.3 如何只导出部分类成员
   9.5.4 LoadLibrary和FreeLibrary函数的用途有哪些,什么是显式加载动态链接库
   9.5.5 DEPENDS工具的用处有哪些
   9.5.6 Windows操作系统用来定位DLL的搜索路径是怎样的
第3篇 使用Visual C++ 6.0进行高级开发
 第10章 多线程开发
  10.1 为什么需要多线程
  10.2 基础知识
   10.2.1 进程与线程
   10.2.2 关于“同时执行”、“并发处理”
  10.3 线程的创建与结束
   10.3.1 Sleep函数
   10.3.2 CreateThread/ExitThread函数
   10.3.3 _beginthreadex/_endthreadex函数
   10.3.4 AfxBeginThread/AfxEndThread函数
   10.3.5 选择哪种函数创建线程
  10.4 线程的调度
   10.4.1 优先权类别
   10.4.2 优先权层级
  10.5 核心对象
   10.5.1 什么是核心对象
   10.5.2 CloseHandle函数
  10.6 线程同步
   10.6.1 同步机制简介
   10.6.2 临界区域(Critical Section)
   10.6.3 使用临界区域保证数据访问的安全性
   10.6.4 安全退出临界区域
   10.6.5 互斥器(Mutexes)
   10.6.6 使用互斥器设计线程安全的数据结构
   10.6.7 信号量(Semaphores)
   10.6.8 事件(Event Objects)
   10.6.9 使用事件通知线程安全地退出
   10.6.10 WaitForSingleObject系列函数
  10.7 再论线程的创建和退出
   10.7.1 回顾
   10.7.2 创建线程的一个习惯用法
   10.7.3 协作式退出线程
  10.8 实战:多线程实现百米赛跑模拟
   10.8.1 设计界面
   10.8.2 设计相关数据结构
   10.8.3 实现自定义消息响应
  10.9 常见问题
   10.9.1 在多线程情况下,使用STL(标准模板库)应该注意什么
   10.9.2 临界区域(Critical Section)相比本章介绍的相关核心对象有何优缺点
 第11章 数据库应用开发
  11.1 数据库应用开发介绍
   11.1.1 ODBC技术介绍
   11.1.2 OLE DB、ADO技术介绍
   11.1.3 使用数据库API接口
   11.1.4 准备工作
  11.2 使用ODBC开发数据库应用
   11.2.1 创建ODBC数据源
   11.2.2 连接数据源
   11.2.3 CRecordSet类介绍
   11.2.4 添加、修改和删除数据
   11.2.5 撤销操作
   11.2.6 查询记录
   11.2.7 读取数据
  11.3 使用ADO开发数据库应用
   11.3.1 ADO内置对象简介
   11.3.2 使用ADO注意事项
   11.3.3 连接数据库
   11.3.4 记录集-填充和读取数据
   11.3.5 记录集-添加数据
   11.3.6 记录集-删除数据
   11.3.7 记录集-编辑数据
   11.3.8 命令
  11.4 使用数据库API开发数据库应用
   11.4.1 MySQL数据库介绍
   11.4.2 安装MySQL数据库
   11.4.3 准备工作
   11.4.4 配置编译环境
   11.4.5 连接MySQL数据库
   11.4.6 执行SQL语句
   11.4.7 读取数据
  11.5 实战:使用ODBC操作MS SQL Server数据库
   11.5.1 需求分析
   11.5.2 界面设计及实现
   11.5.3 实现数据源的连接和关闭
   11.5.4 数据显示
   11.5.5 删除数据
   11.5.6 添加、编辑数据
  11.6 实战:使用ADO操作Access数据库
   11.6.1 需求分析
   11.6.2 数据库设计
   11.6.3 界面设计
   11.6.4 封装数据结构
   11.6.5 数据访问层接口设计
   11.6.6 数据访问层接口实现
   11.6.7 辅助窗口设计和实现
   11.6.8 主程序实现
  11.7 实战:开发MySQL数据库应用程序
   11.7.1 设置头文件和导入库
   11.7.2 编写辅助宏
   11.7.3 设计数据结构
   11.7.4 连接数据库
   11.7.5 添加数据
   11.7.6 读取数据
   11.7.7 主程序实现
  11.8 常见问题
   11.8.1 如何选择开发数据库应用程序的技术
   11.8.2 如何使用基于XML的文本数据库
 第12章 Windows网络编程
  12.1 Winsock基础知识
   12.1.1 Winsock版本
   12.1.2 使用Winsock
   12.1.3 初始化Winsock
   12.1.4 反初始化Winsock
   12.1.5 使用WSAGetLastError函数
   12.1.6 基本的Winsock初始化、反初始化代码框架
   12.1.7 阻塞和非阻塞调用
  12.2 寻址及套接字的创建与关闭
   12.2.1 IPv4寻址
   12.2.2 创建套接字
   12.2.3 关闭套接字
  12.3 使用TCP协议进行网络通信
   12.3.1 TCP协议通信流程
   12.3.2 服务端函数
   12.3.3 客户端函数
   12.3.4 收发数据
  12.4 使用UDP协议进行网络通信
   12.4.1 UDP协议通信流程
   12.4.2 服务端函数
12.4.3 客户端函数
  12.5 Winsock I/O模型
   12.5.1 套接字模式
   12.5.2 阻塞模型、select模型
   12.5.3 WSAAsyncSelect模型
   12.5.4 WSAEventSelect模型
   12.5.5 重叠模型、完成端口模型
  12.6 实战:使用UDP协议实现即时通信
   12.6.1 需求分析
   12.6.2 通信协议设计
   12.6.3 服务端设计与实现
   12.6.4 客户端框架设计
   12.6.5 设定套接字模型
   12.6.6 套接字的连接和关闭
   12.6.7 消息的发送
   12.6.8 数据接收
   12.6.9 运行效果
  12.7 常见问题
   12.7.1 为什么本章没有介绍使用MFC类进行Windows网络编程
   12.7.2 本章中介绍的Winsock I/O模型对平台有何要求
   12.7.3 在select模型中,fd_set结构能够绑定多少套接字
   12.7.4 WSAWaitForMultiple- Events可以同时等待多少网络事件对象
   12.7.5 编写网络应用程序应该注意什么
 第13章 一个完整的项目实现
  13.1 需求分析以及项目框架
  13.2 服务端设计与实现
   13.2.1 通信协议的设计
   13.2.2 多线程模型的设计
   13.2.3 线程同步
   13.2.4 文件管理模块的设计
   13.2.5 用户管理模块的设计
   13.2.6 线程管理模块设计
   13.2.7 监听模块设计
   13.2.8 传输/服务模块设计
   13.2.9 服务端主程序设计
  13.3 客户端设计与实现
   13.3.1 界面设计
   13.3.2 相关数据结构设计
   13.3.3 断点续传功能的实现
   13.3.4 服务器连接模块
   13.3.5 文件目录信息获取模块
   13.3.6 文件下载模块
  13.4 运行情况
13.5 常见问题
   13.5.1 服务端如何管理“正在服务的客户”和“尚未服务的客户”
   13.5.2 为什么在某些网络环境下测试本章程序会出现丢包现象
第4篇 数据结构和技巧
 第14章 错误和调试
  14.1 错误的基本概念和常见问题
   14.1.1 什么是错误
   14.1.2 野指针问题
   14.1.3 空指针问题
   14.1.4 传值不当引起的问题
   14.1.5 循环终止条件设置不当引起的效率问题
   14.1.6 使用STL中迭代器失效的问题
  14.2 使用Visual C++ 6.0进行调试
   14.2.1 Debug版本和Release版本
   14.2.2 以调试模式启动程序
   14.2.3 断点的使用
   14.2.4 Step Into和Step Out
   14.2.5 Step Out和Run to Cursor
   14.2.6 查看调试断点的上下文信息
   14.2.7 调试动态链接库
  14.3 常见问题
   14.3.1 如何在Release版本下加入调试符号
   14.3.2 MFC对程序调试提供了哪些支持
 第15章 MFC常用技巧
  15.1 使CListCtrl控件可以选择一整行
  15.2 去除单(多)文档窗口标题栏的文档名
  15.3 禁止调整窗口大小
  15.4 使应用程序在同一时刻只能运行一个实例
  15.5 创建选择文件夹的对话框
  15.6 使窗口置顶
  15.7 使应用程序支持启动参数
  15.8 获得程序自身所在的目录
  15.9 如何播放WAV文件
  15.10 更改选择文件对话框中的按钮文字
  15.11 使用CBitmapButton类
  15.12 使用CToolTipCtrl类实现提示信息效果
  15.13 判断窗口的最大化、最小化状态并进行控制
  15.14 如何在运行时动态创建控件
  15.15 如何创建“上下文”式右键菜单
  15.16 如何获得系统文件夹路径
  15.17 如何使用RichEdit控件
  15.18 如何获取当前屏幕的分辨率
  15.19 CListCtrl控件无法满足需求,有什么好的控件可以代替
  15.20 有哪些兼容MFC的界面库
 第16章 MFC抽象数据类型
  16.1 链表
   16.1.1 使用CStringList、CObList、CPtrList简单链表类
   16.1.2 使用CList链表类
  16.2 数组
   16.2.1 使用CDWordArray类
   16.2.2 使用CArray类
  16.3 映射
   16.3.1 使用CMapStringToString等简单映射类
   16.3.2 使用CMap类
  16.4 常见问题
   16.4.1 如何选择适当的MFC抽象数据类型
   16.4.2 使用MFC抽象数据类型还是STL(标准模板库)
 第17章 标准模板库(STL)
  17.1 基本概念
   17.1.1 命名空间和头文件
   17.1.2 异常处理
   17.1.3 STL的主要组成部分
  17.2 容器
   17.2.1 使用动态数组类vector
   17.2.2 使用队列类deque
   17.2.3 使用链表类list
   17.2.4 使用集合类set
   17.2.5 使用映射类map
  17.3 常用算法
   17.3.1 for_each算法
   17.3.2 count、count_if算法
   17.3.3 min_element、max_element算法
   17.3.4 find、find_if算法
  17.4 常见问题
   17.4.1 STL有不同版本吗
   17.4.2 遍历容器为什么对迭代器进行++ite而不是ite++操作
 第18章 ERP的进销存管理系统
  18.1 概念分析阶段
   18.1.1 需求分析
   18.1.2 系统功能分析
   18.1.3 系统模块设计
   18.1.4 数据库设计
   18.1.5 创建数据库
  18.2 项目前期配置
   18.2.1 选择数据库程序开发技术
   18.2.2 新建用于实现系统的项目
   18.2.3 添加用于数据库开发的ADO封装类和ADO控件
  18.3 用户管理模块
   18.3.1 实现用户登录功能
   18.3.2 实现修改密码功能
   18.3.3 实现用户的增、删、改
  18.4 实体信息管理模块
   18.4.1 客户信息管理
   18.4.2 供应商信息管理
   18.4.3 员工信息管理
   18.4.4 商品信息管理
  18.5 进销存管理模块
   18.5.1 销售管理
   18.5.2 进货管理
  18.6 统计报表模块
   18.6.1 创建员工销售业绩报表
   18.6.2 创建各种商品销售情况报表
   18.6.3 员工销售业绩统计报表
   18.6.4 各种商品销售情况统计报表
  18.7 系统运行结果
  18.8 常见问题
   18.8.1 什么是水晶报表
   18.8.2 从程序员的角度看,MIS系统的开发步骤是怎样的
附录A C++常见面试题

本目录推荐