Create是CFrameWnd的成员函数,在Create函数中又调用了CreateEx,因为派生类CFrameWnd没有改变CWind的虚函数CreateEx,所以其实调用的是CWnd::CreateEx. 然后我们看CreateEx源码会发现调用了PreCreateWindow();这是个虚函数,在CWnd和CFrameWnd都有定义,由于this指针的缘故,这里调用的是CFrameWnd::PreCreateWindow。 继续跟入可...
Create是CFrameWnd的成员函数,在Create函数中又调用了CreateEx,因为派生类CFrameWnd没有改变CWind的虚函数CreateEx,所以其实调用的是CWnd::CreateEx. 然后我们看CreateEx源码会发现调用了PreCreateWindow();这是个虚函数,在CWnd和CFrameWnd都有定义,由于this指针的缘故,这里调用的是CFrameWnd::PreCreateWindow。 继续跟入可...
分析MFC程序的主线程启动及消息队列处理的过程将有助于我们进一步理解UI线程与消息队列的关系,为此我们需要简单地叙述一下MFC程序的"生死因果"(侯捷:《深入浅出MFC》)。 使用VC++ 6.0的向导完成一个最简单的单文档架构MFC应用程序MFCThread: (1) 输入MFC EXE工程名MFCThread; (2) 选择单文档架构,不支持Document/...
深入浅出MFC源代码part2.pdf,《深入浅出MFC》 2/e 电子书开放自由下载 声明 致亲爱的大陆读者 我是侯捷(侯俊杰)。自从华中理工大学于1998/04 出版了我的《深入浅出MFC》 1/e 简体版(易名 《深入浅出Windows MFC 程序设计》)之后,陆陆续续我 收到了许多许多的大陆读者来
如果用正体表示类名和函 数名 (形式为ClassName::FunctionName ),则程序源码中没有类名约束,分几种情况:如 果是虚拟函数则表示该函数动态约束的结果是调用了指定类的函数;如果是消息处理函数, 表示指定类的消息处理函数被调用;如果不是上述两种情况,表示该函数调用了指定类的实 现。如果用斜体表示表示类名和函数...
通过上述分析,可知AppWizard产生的MDI框架程序的内容,所定义和实现的类。下面,从文件的角度来考察AppWizard生成了哪些源码文件,这些文件的作用是什么。表1-1列出了AppWizard所生成的头文件,表1-2列出了了AppWizard所生成的实现文件及其对头文件的包含关系。
数名(形式为ClassName::FunctionName ),则程序源码中没有类名约束,分几种情况:如 果是虚拟函数则表示该函数动态约束的结果是调用了指定类的函数;如果是消息处理函数, 表示指定类的消息处理函数被调用;如果不是上述两种情况,表示该函数调用了指定类的实
110.第8章:不能调试MFC源码的原因以及解决办法[MFC深入浅出学习过程记录] 03:19 111.第8章:台面下的Serialize写文件奥秘[MFC深入浅出学习过程记录] 01:01:51 112.第8章:MFC宏三件套[MFC深入浅出学习过程记录] 15:27 113.第8章:Serializable的5个必要条件[MFC深入浅出学习过程记录] 06:57 114.第8...
我也赞同书中所讲,应用MFC框架开发Windows程序需要深入到底层,如果只停留在表面应用知其然而不知其所以然,这样会限制你更好的应用MFC框架。 Win32 程序开发流程 下图说明一个32位WindowsSDK程序的开发流程: Windows 程序分为「程序代码」和「UI( User Interface)资源」两大部份,两部份最后以RC编译器整合为一个完整...
STL源码剖析 8.7 C++标准程序库 9.0 C++编程思想(第1卷) 8.3 我来说两句 短评 ··· ( 全部141 条 ) 热门 1 有用 友邻 2013-09-04 00:41:05 1、主要看第二章 C++的重要性质,了解C++的多态是怎么实现的。 2、力荐的原因除了里面的图表让我了解的多态怎么通过vtable实现之外,还有作者写书...