分类:C/C++
语言:简体中文
大小:未知
发布时间:13-11-22
出版说明前言第一篇 visual c++与c++基础第1章 visual c++ 6.0开发环境和应用程序框架 11.1 安装并测试visual c++ 6.0 11.1.1 visual c++ 6.0的安装 11.1.2 visual c++ 6.0开发环境 41.1.3 visual c++ 6.0应用程序向导和项目创建 51.2 visual c++ 6.0简介 71.2.1 c/c++编译器 71.2.2 编辑器 71.2.3 资源编辑器和资源符号 81.2.4 连接器和调试器 81.2.5 visual c++ 6.0的主要菜单项功能 91.2.6 项目和解决方案 141.2.7 本机帮助和联机帮助 141.3 win32基本应用程序的创建 151.3.1 使用appwizard应用程序向导 151.3.2 win32应用程序的生成 161.3.3 visual c++ 6.0的调试:变量跟踪和函数调用栈 19.1.4 microsoft应用程序框架 211.4.1 全局对象 211.4.2 mfc的消息映射和消息分类 211.5 实例:编写第一个c++程序—hello, c++! 211.6 实例:创建第一个mfc程序—hello, mfc! 241.7 小结 241.8 本章练习 24第2章 c++语法基础 252.1 c++简介 252.2 数据类型定义和使用 262.2.1 简单变量 262.2.2 算术运算符 292.2.3 枚举、指针和数组 312.2.4 string类和c风格字符串 332.2.5 结构体类型 352.2.6 类类型 362.2.7 实例:成绩管理系统(1.0版) 392.3 运算符、表达式和语句 432.3.1 几种常用的运算符 432.3.2 循环语句:for语句、while语句和do...while语句 452.3.3 判断语句:if语句和switch语句 462.3.4 实例:成绩管理系统(2.0版) 492.4 函数定义和调用 532.4.1 定义函数和函数原型 532.4.2 函数通过指针来调用数组 542.4.3 函数指针 542.4.4 具有引用参数的函数 552.4.5 函数重载 582.4.6 函数模板的定义和使用 592.4.7 实例:成绩管理系统(3.0版) 602.5 类的定义和对象构造 622.5.1 自然界中的类型和c++的类定义 632.5.2 实现类成员函数 642.5.3 实例化类对象并使用 662.5.4 类的构造函数和析构函数 672.5.5 运算符重载与this指针的使用 692.5.6 友元函数和友元类 702.5.7 实例:成绩管理系统(4.0版) 732.6 类继承 772.6.1 is-a关系 772.6.2 多态公有继承 792.6.3 protected访问控制 812.6.4 抽象基类 822.6.5 私有继承和保护继承 832.6.6 多继承 832.6.7 类模板 842.7 c++异常机制 852.7.1 异常处理类型 852.7.2 exception类 872.8 标准模板库(stl) 872.8.1 auto_ptr类的使用 872.8.2 vector模板类的定义和使用 882.8.3 通用算法 892.8.4 实例:使用stl和通用算法开发成绩管理系统(5.0版) 912.9 i/o流和文件 952.9.1 c++的输入和输出 962.9.2 文件输入和输出 962.9.3 实例:在visual c++ 6.0创建c++源文件,使用磁盘文件读写 972.10 小结 982.11 本章练习 98第3章 windows编程与mfc基础 993.1 windows编程基础 993.1.1 windows api函数 993.1.2 窗口与句柄 993.1.3 事件与消息 1003.1.4 常用的windows数据类型 1003.2 windows应用程序分析 1013.2.1 winmain函数 1023.2.2 创建窗口 1023.2.3 消息循环 1033.2.4 winproc窗口函数 1043.2.5 windows编程实例 1053.3 mfc基础 1073.3.1 mfc概述 1073.3.2 mfc基础类及其层次结构 1073.3.3 mfc中的全局函数 1093.4 mfc应用程序框架分析 1093.4.1 入口函数 1093.4.2 应用程序对象 1103.4.3 initinstance函数 1113.4.4 run函数 1123.4.5 mfc的消息映射 1143.4.6 mfc消息分类 1143.5 小结 1163.6 本章练习 116第二篇 visual c++常用类、控件和资源第4章 基本输入—键盘和鼠标消息 1174.1 键盘消息及其处理 1174.1.1 键盘消息 1174.1.2 键盘消息处理 1184.1.3 按键消息的处理 1184.1.4 按键消息处理函数 1204.1.5 字符消息的处理 1224.1.6 创建键盘插入符 1254.2 鼠标消息及其处理 1284.2.1 鼠标消息 1284.2.2 鼠标消息处理函数 1284.2.3 鼠标消息处理实例 1294.2.4 鼠标光标的创建与使用 1324.2.5 捕捉鼠标 1334.2.6 锁定鼠标的作用区域 1344.3 小结 1354.4 本章练习 135第5章 菜单、工具栏和状态栏编程 1365.1 菜单及其相关资源的使用 1365.1.1 菜单的种类及开发步骤 1365.1.2 菜单的创建与编辑 1375.1.3 菜单消息 1395.1.4 菜单命令消息的处理 1395.1.5 菜单更新消息的处理 1415.1.6 为菜单项设置快捷键 1435.1.7 弹出菜单的创建与使用 1455.2 工具栏的使用 1485.2.1 工具栏的创建 1485.2.2 编辑工具栏 1505.2.3 工具栏命令处理 1515.2.4 工具栏类ctoolbar的简单介绍 1515.3 状态栏的使用 1525.3.1 状态栏的创建 1525.3.2 状态栏编程 1535.3.3 状态栏类cstatusbar的简单介绍 1565.4 小结 1575.5 本章练习 157第6章 使用windows标准控件 1586.1 windows标准控件 1586.1.1 windows控件简介 1596.1.2 使用对话框编辑器创建控件 1596.1.3 控件类的基类cwnd 1626.1.4 控件的消息及其处理 1636.2 按钮控件 1636.2.1 按钮控件简介 1636.2.2 按钮控件类cbutton 1646.2.3 按钮控件的属性与消息 1656.2.4 按钮状态的确定 1666.2.5 按钮控件使用实例 1676.3 静态控件与编辑控件 1716.3.1 静态控件的创建与使用 1716.3.2 静态控件类cstatic 1726.3.3 编辑控件的创建 1736.3.4 编辑控件类cedit 1746.3.5 编辑控件的消息 1756.3.6 编辑控件的应用实例 1766.4 列表框控件和组合框控件 1786.4.1 列表框控件的创建 1786.4.2 列表框控件类clistbox 1796.4.3 列表框控件的消息 1806.4.4 列表框控件实例 1806.4.5 组合框控件的创建 1836.4.6 组合框控件类ccombobox 1846.4.7 组合框控件的消息 1856.5 微调控件、滑块控件和进度条 1856.5.1 微调控件的创建 1866.5.2 微调控件的使用 1866.5.3 滑块控件的创建 1886.5.4 滑块控件的使用 1886.5.5 进度条控件的创建及使用 1906.5.6 微调控件、滑块控件和进度条编程实例 1916.6 列表视图控件和树形视图控件 1926.6.1 列表视图控件的创建 1936.6.2 列表视图控件类clistctrl 1946.6.3 列表视图控件的通知消息 1966.6.4 树形视图控件的创建 1966.6.5 树形视图控件类ctreectrl 1976.6.6 树形视图控件的消息 1996.6.7 列表视图和树形视图编程实例 1996.7 activex控件的使用 2036.7.1 activex控件的结构 2036.7.2 visual c++中的组件和控件库 2046.7.3 mfc程序中activex控件的使用 2056.7.4 activex控件使用实例 2066.8 小结 2106.9 本章练习 210第7章 mfc常用的通用类 2117.1 字符串类(cstring) 2117.1.1 cstring对象的创建 2117.1.2 cstring类的成员函数 2117.1.3 cstring类的常用操作 2127.1.4 cstring的格式化与类型转换 2157.2 mfc的集合类 2167.2.1 数组类 2167.2.2 数组类的使用实例 2177.2.3 链表类 2197.2.4 链表类的使用实例 2217.3 日期、时间类 2237.3.1 ctime类 2237.3.2 ctime对象的格式化 2247.3.3 ctimespan类 2257.3.4 计时器的使用 2267.4 mfc文件操作类(cfile) 2277.4.1 构造文件对象并打开文件 2277.4.2 文件的读写操作 2287.4.3 文件的定位操作 2297.4.4 文件的管理操作 2307.4.5 使用cfile类进行文件操作实例 2317.5 mfc异常类 2337.5.1 mfc异常类简介 2337.5.2 文件异常类cfileexception 2347.5.3 异常的捕获 2357.6 小结 2377.7 本章练习 237第8章 文本、图形输出 2388.1 基础知识 2388.1.1 gdi绘图的实现 2388.1.2 mfc图形对象类 2398.1.3 库存gdi对象 2408.1.4 与图形绘制有关的简单数据类型 2408.1.5 mfc应用程序框架中的图形绘制与刷新 2428.2 mfc设备描述表(cdc类) 2438.2.1 cdc及其派生类 2438.2.2 文本输出 2458.2.3 cdc的常用绘图函数 2478.3 使用画笔和画刷进行绘图 2498.3.1 画笔对象及其使用 2498.3.2 使用画笔绘图实例 2508.3.3 画刷对象及其使用 2518.3.4 使用画刷绘图实例 2528.4 字体对象 2548.4.1 字体对象的创建 2558.4.2 获取字体信息 2578.4.3 字体对象使用实例 2578.5 位图和区域对象 2588.5.1 设备相关位图(ddb) 2588.5.2 cbitmap应用实例 2608.5.3 设备无关位图(dib) 2618.5.4 区域对象(crgn) 2628.5.5 crgn应用实例 2638.6 坐标系统与映射模式 2658.6.1 坐标系统 2658.6.2 映射模式 2658.6.3 自定义映射模式 2668.6.4 坐标映射使用实例 2678.7 小结 2688.8 本章练习 269第三篇 visual c++基本应用程序开发第9章 文档/视图结构的应用程序开发 2719.1 文档/视图结构 2719.1.1 文档/视图结构概述 2719.1.2 文档/视图结构的分类 2729.2 文档/视图结构应用程序框架分析 2739.2.1 利用appwizard创建单文档程序框架 2739.2.2 程序框架中的主要类及相互关系 2769.2.3 文档类、视图类核心函数及作用 2789.2.4 新建、保存和打开的实现 2799.2.5 多文档应用程序框架 2809.3 文档/视图结构应用程序的开发 2829.3.1 实现目标 2829.3.2 创建基本的程序框架 2829.3.3 创建文档数据 2849.3.4 在视图类中实现绘图操作 2849.3.5 文档的序列化 2879.3.6 对例程数据进行序列化 2919.3.7 让文档程序支持滚动条 2949.4 窗口分割与多视图 2969.4.1 窗口分割基础知识 2969.4.2 动态分割窗口的实现 2989.4.3 静态分割窗口与多视图的实现 3009.5 小结 3039.6 本章练习 303第10章 对话框的应用 30410.1 对话框的工作方式、种类和创建方法 30410.1.1 对话框在应用程序中的工作方式.. 30410.1.2 对话框的种类 30410.1.3 对话框模板的创建与编辑 30510.2 对话框与程序连接 30810.2.1 创建对话框类 30810.2.2 为对话框类添加成员变量 30910.2.3 对话框数据交换与验证 31010.2.4 对话框控件通知消息的处理 31210.3 对话框的创建与显示 31410.3.1 创建模态对话框 31410.3.2 创建非模态对话框 31510.3.3 非模态对话框创建实例 31610.3.4 基于对话框的应用程序 32110.4 属性表对话框 32310.4.1 属性表对话框的创建 32410.4.2 属性表对话框的运行机制 32710.5 消息对话框与公用对话框 32810.5.1 消息对话框 32910.5.2 颜色对话框 33110.5.3 文件对话框 33210.5.4 字体对话框 33310.5.5 查找、替换对话框 33510.5.6 打印对话框 33710.5.7 公用对话框使用实例 33910.6 小结 34410.7 本章练习 344第11章 动态链接库编程 34511.1 基本概念 34511.1.1 动态链接库的概念 34511.1.2 动态链接库的优点 34611.1.3 visual c++ 6.0可开发的dll 34711.1.4 dll文件的组成 34711.2 dll的创建与调用 34811.2.1 win32 dll的创建 34811.2.2 dll的导出 34911.2.3 应用程序链接dll 35011.3 mfc常规dll的创建与使用 35411.3.1 基本概念 35411.3.2 mfc常规dll的创建 35511.3.3 mfc常规dll创建实例 35511.3.4 mfc常规dll的调用 35711.4 mfc扩展dll的创建与使用 35911.4.1 mfc扩展dll的创建 35911.4.2 mfc扩展dll的创建实例 36011.4.3 mfc扩展dll的调用 36311.5 dll的查看与调试 36411.5.1 使用depends工具查看dll接口 36411.5.2 dll的调试 36511.6 小结 36611.7 本章练习 366第四篇 visual c++应用程序开发进阶第12章 多线程程序开发 36712.1 多线程的引入 36712.1.1 单线程程序的不足 36712.1.2 问题的解决 36812.2 多线程编程的基础知识 36812.2.1 进程和线程 36812.2.2 spy++工具 36912.2.3 win32 api对多线程编程的支持 36912.2.4 mfc对多线程编程的支持 37312.3 多线程程序开发 37612.3.1 使用win32 api函数开多线程程序 37612.3.2 mfc用户界面线程的开发 37912.3.3 mfc工作者线程的开发 38312.4 线程间的通信 38312.4.1 使用全局变量实现线程间的通信 38312.4.2 使用自定义的消息实现线程间的通信 38612.5 线程的同步 38912.5.1 等待函数 38912.5.2 cevent类实现线程同步 39012.5.3 使用cevent类实现线程同步实例 39112.5.4 ccriticalsection类实现线程同步 39412.5.5 ccriticalsection类实现线程同步实例 39512.5.6 csemaphore类实现线程同步 39812.5.7 csemaphore类实现线程同步实例 39812.6 小结 40012.7 本章练习 400第13章 visual c++网络编程 40113.1 网络通信及开发基础 40113.1.1 tcp/ip协议 40113.1.2 tcp/ip协议 40313.1.3 windows sockets基础 40313.1.4 客户端/服务器模式 40413.2 基本网络通信开发 40413.2.1 casyncsocket类及常用成员函数的使用 40413.2.2 使用winsock进行无连接的通信 40813.2.3 无连接通信实例 40913.2.4 使用winsock进行有连接的通信 41313.2.5 有连接通信实例 41313.3 网络程序设计与开发 41713.3.1 网络程序的一些概念 41813.3.2 socket事件 41813.3.3 socket事件的激发控制 41813.3.4 socket信息的获取与处理 41913.3.5 网络程序开发实例 42113.4 wininet开发internet客户端程序 42913.4.1 mfc wininet开发包 42913.4.2 wininet开发客户端程序的流程 43013.4.3 wininet开发http客户端程序实例 43113.5 简单的web浏览器开发 43313.5.1 chtmlview视图类简介 43313.5.2 浏览器开发实例 43413.6 小结 43913.7 本章练习 439第14章 visual c++数据库编程 44014.1 数据库基础 44014.1.1 数据库的基本概念 44014.1.2 数据库管理系统(dbms) 44114.1.3 结构化查询语言(sql) 44114.2 数据库开发技术简介 44414.2.1 odbc api/mfc odbc技术 44414.2.2 dao技术 44514.2.3 ado技术 44514.3 在visual c++中使用ado开发数据库应用程序 44714.3.1 visual c++对ado的支持 44714.3.2 创建数据库与实例工程 44814.3.3 引入ado对象 45114.3.4 连接数据源 45114.3.5 开发技术—连接对象(connection) 45214.3.6 创建表并添加数据 45414.3.7 开发技术—ado对象命令的执行 45514.3.8 开发技术—recordset对象 45714.3.9 遍历、删除、编辑记录的实现 46214.4 使用odbc数据源连接数据库 46714.4.1 手动实现设置odbc数据源 46714.4.2 ado连接odbc数据源 46814.4.3 visual c++程序实现设置odbc数据源 46914.4.4 使用visual c++程序设置odbc数据源实例 47014.5 小结 47114.6 本章练习 471第15章 使用visual c++ 6.0开发家庭财务管理系统 47215.1 提出问题:设计一个家庭财务管理系统 47215.1.1 功能概述 47215.1.2 界面需求 47215.2 数据库设计 47315.2.1 数据关系分析 47315.2.2 e-r图设计 47415.2.3 数据库表的生成 47515.3 算法设计 47615.3.1 连接数据库 47615.3.2 添加数据 47715.3.3 修改数据库内容 47715.3.4 统计数据库信息 47815.4 软件项目开发过程 47815.4.1 开发家庭财务管理系统项目的流程 47815.4.2 根据e-r图创建数据库表 47815.4.3 功能研发的准备工作 48015.4.4 实现算法设计 48315.4.5 测试 48615.5 小结 487编程实践:visual c++进阶100例电子书目录前言第1章 认识visual c++ 6.0 11.1 第一个控制台应用程序实例 11.2 第一个windows应用程序实例 31.3 基于对话框的mfc应用程序实例 51.4 单文档mfc应用程序实例 71.5 多文档mfc应用程序实例 101.6 宏的使用实例 12第2章 使用常用win32控件 152.1 静态文本、文本框和按钮使用实例 152.2 复选框和单选按钮使用实例 172.3 组合框(combo box)和列表框(list box)使用实例 202.4 滚动条(scroll bar)使用实例 222.5 数值调节按钮(spin)使用实例 242.6 进度条(progress)使用实例 262.7 滑块控件(slider)使用实例 272.8 热键控件(hot key)使用实例 292.9 列表控件(list control)使用实例 302.10 树形控件(tree control)使用实例 332.11 格式文本框(rich edit)使用实例 362.12 属性页(tab control)使用实例 402.13 动画控件(animate)使用实例 422.14 日期时间选择控件(date time picker)使用实例 442.15 日历控件(month calendar)使用实例 462.16 ip输入框(ip address)使用实例 47第3章 使用高级win32控件丰富界面 503.1 窗体菜单使用实例 503.2 弹出式菜单使用实例 523.3 工具栏使用实例 553.4 256色工具栏使用实例 573.5 状态栏输出信息实例 583.6 状态栏彩色渐变进度条实例 603.7 tooltip显示即时提示实例 64第4章 窗体 674.1 创建和显示窗体实例 674.2 让窗体保持在最顶层实例 774.3 创建半透明窗体实例 784.4 创建椭圆窗体实例 824.5 创建文字窗体实例 834.6 利用图片生成异形窗体实例 884.7 以动画方式显示和隐藏窗体实例 924.8 控件自动适应窗体大小实例 954.9 多个控件改变大小时防止闪烁实例 1004.10 限制窗体的最大和最小尺寸实例 1024.11 让窗体具有停靠效果实例 1034.12 枚举系统中的窗口实例 106第5章 对话框 1165.1 显示模式对话框实例 1165.2 显示非模式对话框实例 1185.3 打开文件对话框使用实例 1205.4 保存文件对话框使用实例 1235.5 字体对话框使用实例 1245.6 颜色对话框使用实例 1255.7 为打开文件对话框增加预览功能实例 1275.8 从内存创建对话框实例 130第6章 深入了解windows消息 1376.1 传递并响应windows消息实例 1376.2 发送windows消息实例 1416.3 在mfc中映射消息实例 1436.4 自定义消息使用实例 1466.5 拦截并处理win32控件的消息实例 148第7章 系统和外壳编程 1537.1 定时器使用实例 1537.2 访问系统注册表实例 1567.3 用随机数生成强力密码实例 1587.4 打开和程序相关联的文档实例 1607.5 访问windows剪切板实例 1627.6 监视剪切板内容变化实例 1657.7 使用系统托盘图标实例 169第8章 基本输入设备 1758.1 鼠标输入处理实例 1758.2 键盘输入处理实例 1778.3 利用客户区鼠标消息拖动无边框窗体实例 1808.4 利用非客户区控制无边框窗体实例 1828.5 限制鼠标移动区域实例 1848.6 模拟键盘鼠标消息实例 1858.7 使用系统热键使后台程序得到通知实例 189第9章 进程 1949.1 创建和结束进程实例 1949.2 用匿名管道获取控制台程序的输出实例 1989.3 拦截并处理外部进程错误实例 2009.4 防止应用程序运行多次实例 2059.5 用消息在进程间通信实例 2089.6 用内存映射文件在进程间通信实例 2109.7 枚举并得到系统中所有进程信息实例 214第10章 线程 22510.1 主线程阻塞实例 22510.2 创建和结束线程实例 22710.3 用临界区对象同步线程实例 23010.4 用事件对象同步线程实例 23510.5 用信号量对象同步线程实例 24210.6 调整线程优先级实例 244第11章 图形图像开发 24711.1 用dc对象缩放位图实例 24711.2 用画笔对象画线实例 25111.3 用画刷对象填充区域实例 25411.4 输出文本实例 25611.5 使用gdi+读取不同格式的图片实例 25911.6 使用gdi+保存不同格式的图片实例 26411.7 制作屏幕截图程序实例 26711.8 给图片增加版权信息实例 269第12章 文件io开发 28412.1 用基本api读写文件实例 28412.2 用mfc类读写文件实例 29112.3 监控硬盘上文件的变化实例 29612.4 获取本机所有磁盘及其空间使用情况实例 30112.5 unicode编码处理实例 30512.6 读写xml文件实例 30812.7 读写串口数据实例 313第13章 数据库开发 31913.1 创建odbc数据源实例 31913.2 使用odbc访问数据库实例 32113.3 使用ado访问数据库实例 32313.4 调用sql server的存储过程实例 32913.5 事务处理sql server命令实例 33313.6 存取数据库中的图片实例 33613.7 在程序中动态生成access数据库实例 344第14章 网络开发 34714.1 建立udp连接客户端实例 34714.2 建立udp连接服务器端实例 35014.3 建立tcp连接客户端实例 35214.4 建立tcp连接服务器端实例 35714.5 mfc的socket类使用实例 36214.6 注册自己的浏览器地址栏协议实例 36714.7 抓取网页内容实例 37114.8 基于icmp的网络速度监控实例 373第15章 windows高级编程 38715.1 鼠标hook制作实例 38715.2 用鼠标hook读取密码框中的内容实例 39015.3 键盘hook制作实例 39415.4 用键盘hook屏蔽系统按键实例 39615.5 用hook技术给对话框换肤实例 40015.6 分析dll文件获取其导出函数列表实例... 404
...