MFC原理第二讲.MFC的初始化过程】的更多相关文章

MFC原理第二讲MFC的初始化过程 一丶简介 通过上一讲.我们手工模拟了一个MFC程序. 但是上一讲留下了疑问. 就是WinMain在哪.以及消息处理在哪里. 这一节主要就是讲解Winmain在哪里. 以及为什么全局应用程序对象要初始化. 也就是我们的theApp这个变量. 也就是MFC的初始化过程. 二丶Winmain查找. 我们上一讲模拟了MFC程序.要查找winmain很简单. 1.调试启动. F10快捷键. 这样直接定位到Winmain 2.因为我们的InitInstance调用.我们可…
MFC原理第一讲.MFC的本质.以及手工编写MFC的程序 PS: 这个博客属于复习知识.从头开始讲解. 在写这篇博客之前.已经写了3篇MFC的本质了.不过掌握知识点太多.所以从简重新开始. 一丶MFC的本质是什么. MFC的本质其实就是Win32程序的一种封装. 其实就是封装好了.我们直接用就行了. 二丶手工编写一个MFC程序. 手工编写MFC程序.需要熟悉两个类 一个是CWinAPP,一个是CFramWnd类. 这两个类的作用. CWinAPP  这个主要就是保存窗口的一些数据.跟窗口本身无关…
目录 一丶简介 二丶代码还原讲解 1.被除数无符号 除数非2的幂 2.被除数无符号 除数为特例7 三丶代码还原总结 一丶简介 上一篇博客说的除2的幂. 如果被除数是有符号的,那么会进行调整,并使用位操作进行优化 本片博客专门讲解除数不是2的幂 二丶代码还原讲解 1.被除数无符号 除数非2的幂 高级代码: Release汇编 .text:0040101A mov eax, 38E38E39h .text:00401023 mul [esp+10h+var_8] .text:00401027 shr…
前文我们有了IOC的源码基础以及SpringMVC的基础,我们便可以进一步深入理解SpringMVC主要实现原理,包含DispatcherServlet的初始化过程和DispatcherServlet处理请求的过程的源码解析.本文是第一篇:DispatcherServlet的初始化过程的源码解析.@pdai Spring框架系列(13) - SpringMVC实现原理之DispatcherServlet的初始化过程 DispatcherServlet和ApplicationContext有何关系…
上文,我们看了IOC设计要点和设计结构:紧接着这篇,我们可以看下源码的实现了:Spring如何实现将资源配置(以xml配置为例)通过加载,解析,生成BeanDefination并注册到IoC容器中的.@pdai Spring框架系列(7) - Spring IOC实现原理详解之IOC初始化流程 引入 如何将Bean从XML配置中解析后放到IoC容器中的? 初始化的入口 设置资源解析器和环境 设置配置路径 初始化的主体流程 初始化BeanFactory之obtainFreshBeanFactory…
前文我们有了IOC的源码基础以及SpringMVC的基础,我们便可以进一步深入理解SpringMVC主要实现原理,包含DispatcherServlet的初始化过程和DispatcherServlet处理请求的过程的源码解析.本文是第二篇:DispatcherServlet处理请求的过程的源码解析.@pdai Spring框架系列(14) - SpringMVC实现原理之DispatcherServlet处理请求的过程 DispatcherServlet处理请求的过程? 回顾整理处理流程 doG…
框架原理第二讲,RTTI,运行时类型识别.(以MFC框架讲解) 一丶什么是RTTI,以及RTTI怎么设计 通过第一讲,我们知道了怎么样升成一个窗口了,以及简单的消息循环. 第二讲则是主要讲解RTTI 什么是RTTI,RTTI 简单来多就是我根据一个字符串,来new一个对象 例如: CObject * pThis = (Cobject *)Getobj("CObject"); 反回的是实例对象 但是具体怎么做 首先我们要解决的问题 1.我们要知道子类的名字 2.怎么识别子类的父类 关于第…
---恢复内容开始--- MFC原理第六讲.消息传递 一丶简介 通过上一讲我们的消息映射表.我们得知. 消息映射表 会保存父类的MessageMap 以及自己当前的消息结构体数组. 消息传递是一层一层的递进的.那么我们现在要看一下怎么递进的. 要学习的知识 1.窗口创建的流程.以及默认的回调函数 2.消息处理流程 二丶窗口创建的流程.以及默认的回调函数 我们要看窗口创建.那么就需要跟进 MFC源码去看. 首先就是对我们的Create函数下断点.看一下做了什么事情. 进入Create函数内部. B…
MFC原理第四讲.动态创建机制 一丶要学习的知识点以及简介 动态创建是什么意思? 动态创建其实就是跟C++的new一样.都是创建对象.但是规避了C++语法的缺陷. 例如: char * ClassName = "CMyApp" CObject *obj = new ClassName; C++ 中不允许这样编写代码 要学习的知识点 1.DECLARE_DYNCREATE 宏   学过上讲RTTI的应该明白.这个就是个文字替换. 也可以说这个宏是一个声明宏 当然也有实现宏 2.IMPLE…
MFC原理第五讲.消息映射.以及如何添加消息 一丶消息映射是什么 我们知道.Win32程序.都是通过消息去驱动的. 不断的在处理消息. 只要我们使用固定的宏.就可以让我们的框架知道一旦消息发生.该往哪一个类传递. 每一个类可以拥有一个映射表格. 也可以没有. 关键宏 1. DECLARE_MESSAGE_MAP  声明宏.放在类中 2. BEGIN_MESSAGE_MAP      实现宏放在类实现外 3. END_MESSAGE_MAP   实现宏放在类外面 如何添加消息. 如果我们添加了 B…