Visual C++权威剖析——MFC原理、机制与开发实例(配光盘)

分类: 图书,计算机/网络,程序设计,C C++ C# VC VC++,
作者: 辛长安,王颜国 编著
出 版 社: 清华大学出版社
出版时间: 2008-5-1字数: 690000版次: 1页数: 478印刷时间: 2008/05/01开本: 16开印次: 1纸张: 胶版纸I S B N : 9787302170204包装: 平装编辑推荐
如果您已经是Visual c++开发高手,那么本书将不再适合您。
如果您没有Visual c++语言基础,那么本书暂时也不适合您,建议您先选择本书前言中的推荐图书,学习Visual c++语言基础,然后再学习本书,将会达到更好的效果。
如果您已经拥有Visual c++基础,但总感到有一道无形的鸿沟。让您无法逾越,那么本书将非常适合您。本书就像连接这道鸿沟的一座桥,可让您迅速通往Visual C++高手之列。
剖析Visual C++重点与难点技术
揭示MFC封装机制和体系结构
快速掌握Visual c++语言精华
理清Visual c++程序开发思维
内容简介
本书为清华大学出版社所出版的《VC++编程技术与难点剖析》的第2版。本书以C++语法和MFC类库编程的重点、难点内容为主线,从实践应用的角度,结合经典的实例阐述C++类的特性,深入剖析VC++,特别是MFC编程的体系结构,使有初级基础的读者能够快速掌握VC++的MFC程序设计思想和C++的语言精华。
全书共分4篇21章。第1篇阐述C++的关键语法,包括重载、虚拟函数、静态成员、类模板、多重继承和内嵌类等内容;第2篇介绍MFC的核心机制,重点剖析窗口封装类CWnd及其派生类,以及Windows窗口操作的相关内容,阐释了MFC的消息映射与消息处理机制;第3篇讲解了窗口编程,包括自定义控件、优化程序界面以及如何控制MFC的文档/视图框架结构(包括单文档、多文档、视图拆分等);第4篇是高级技术篇,讲解了屏幕绘图、打印、多线程编程、Web编程以及异常处理技术。
本书并非泛讲VC++编程基础的入门教材,因此适合有一定VC++学习经验或编程基础的读者。
作者简介
辛长安,C++资深程序员,系统分析师,软件开发领域自由撰稿人。从事C/C++、计算机图形仿真等研发工作十余年,组织开发过多个国家级项目,2002年出版《VC++编程技术与难点》一书广受读者青睐。现任职北京波尔世通信息技术公司,系统分析师。从事无线电通信领域的图形仿真分析、3维GIS等研发工作。
目录
第1篇C++关键语法及其在MFC中的应用
第1章重载
1.1函数重载
1.1.1问题的提出
1.1.2如何区分重载函数
1.1.3重载函数使用实例
1.1.4编译器调用重载函数的规则
1.1.5在父类和子类中定义重载函数
1.2运算符重载
1.2.1运算符重载的定义
1.2.2运算符重载的特点
1.2.3将运算符重载为友元和成员函数
1.2.4operator调用形式
1.2.5重载运算符的相关问题
1.3函数重载在MFC中的应用举例
1.4运算符重载在MFC中的应用举例
第2章虚拟函数
2.1问题的提出:静态联编与动态联编
2.2引入虚拟函数
2.2.1实例:定义虚拟函数
2.2.2实例:编写通用函数
2.2.3实例:定义主函数
2.3虚拟函数的实现机制
2.3.1类和对象的内存分配机制
2.3.2基类与派生类的内存分配关系
2.3.3非虚拟函数的内存分配机制
2.3.4深入:虚拟函数的内存分配机制
2.4虚拟函数的应用
2.4.1不改变父类的代码,可以改变父类的行为
2.4.2不知道对象的类型,可以执行对象的特定操作
2.4.3如果类包含虚拟成员函数,则将此类的析构函数也定义为虚拟函数
2.5纯虚拟函数
2.6虚拟函数在MFC中的应用举例
第3章静态成员和类模板
3.1静态成员
3.1.1C语法中的静态变量
3.1.2C++中的静态成员变量
3.1.3静态成员函数
3.1.4静态成员变量在MFC中的应用举例
3.1.5静态成员函数在MFC中的应用举例
3.2类模板
3.2.1问题的提出
3.2.2类模板的定义
3.2.3使用类模板和模板类
3.2.4模板在MFC中的应用举例
第4章多重继承和内嵌类
4.1继承方式与访问权限
4.1.1派生类的继承权限
4.1.2在基类中定义数据成员的原则
4.1.3以公有方式派生子类
4.2多重继承和虚拟基类
4.2.1一个例子
4.2.2多重继承的二义性
4.2.3使用虚拟基类解决二义性问题
4.2.4使用虚拟基类需要注意的问题
4.3内嵌类与类合成
4.3.1内嵌类的定义
4.3.2内嵌类的使用方法
4.3.3内嵌类的应用价值
4.3.4类合成
4.4类继承与类合成的应用
4.4.1构造初始化和赋值操作
4.4.2继承与合成的选择
4.5多重继承和内嵌类在COM中的应用
第2篇MFC核心机制
第5章MFC类结构
5.1CObject类
5.1.1支持类诊断
5.1.2提供运行时类信息
5.1.3支持类的连载
5.2CCmdTarget类
5.3CWinThread类
5.3.1虚函数Iniflnstance
5.3.2虚函数Run
5.3.3虚函数ExitInstance
5.4CWnd类
5.4.1绘制窗口
5.4.2操作窗口子控件
5.4.3窗口定时器
5.4.4窗口消息的相关函数
5.4.5默认的消息处理函数
第6章CWnd类与Windows窗口的关系
6.1使用WIN32 APl创建窗口
6.2亲自动手创建窗口封装类
6.2.1实例代码
6.2.2原理分析
6.3CWnd类如何封装Windows窗口
6.3.1使用操作映射的函数
6.3.2CWnd如何处理窗口消息
第7章CWnd的派生类
7.1CFrameWnd类
7.1.1CFrameWnd的创建
7.1.2管理视图对象
7.1.3管理控制条
7.1.4分发命令消息
7.1.5必要的消息处理
7.2CView类
7.2.1关联文档对象
7.2.2视图的绘制
7.2.3虚函数virtual void OnUpdate(CView*pSender,LPARAM,CObject*)
7.2.4虚函数virtual void OnlnitialUpdateo
7.2.5虚函数virtual void CalcWindowRect(LPRECT lpClientRect,UINT nAdjustTypel
7.2.6虚函数virtual void PostNcDestroyo;
7.2.7虚函数virtual BOOL OnCmdMsg(UINT,hat,void*,AFX-CMDHANDLERINFO*)
7.2.8虚函数virtual void OnActivateView(BOOL,CView*,CView*)
7.3CDialog类
7.4模态对话框的消息循环
7.4.1模态对话框的创建与模式循环
7.4.2结束模式循环
7.4.3创建普通的模态窗口
7.5对话框的命令路由
第8章窗口操作
8.1检索窗口
8.1.1根据标题和窗口类查找窗口
8.1.2根据窗口的相对位置或所属关系查找窗口
8.1.3检索窗口的应用
8.2屏幕坐标与客户区坐标
8.3窗口之间的层次关系
8.3.1窗口实例的信息结构
8.3.2桌面窗口(第一层窗口)
8.3.3顶级窗口(第二层窗口)
8.3.4子窗口(第三层以下窗口)
8.3.5重叠窗口与弹出窗口的区别
8.4父窗口与子窗口
8.4.1子窗口的刷新
8.4.2子窗口的显示设备上下文
8.4.3处理WM CTLCOLOR消息
8.4.4项级窗口向子窗口转发系统消息
8.4.5子窗口向父窗口发送通知消息
8.4.6父窗口向子窗口发送反射消息
8.4.7检索父窗口
8.5Windows窗口类
8.5.1窗口类的结构
8.5.2系统定义的窗口类
8.6窗口的子类化和超类化
8.6.1实例子类化和全局子类化
8.6.2子类化的规则与局限
8.6.3使用超类化代替子类化
第9章消息映射与消息处理
第10章特殊消息和处理函数
第3篇窗口编程
第11章控件子窗口
第12章自定义控件
第13章开发使用控制条件
第14章工具栏和菜单优化
第15章单文档和多文档编程
第16章编写多框架的应用程序
第4篇高级技术
第17章屏幕绘图
第18章打印
第19章多线程的创建与控制
第20章操作Web网页
第21章异常处理
