一直以来  我都一个疑惑 如果看懂别人的MFC 程序。

今日忽然略有小悟。

Q:MFC是啥?

A:MFC是类库。。

*************

Q :MFC 啥玩意类库?

A;MFC 是封装API的类库

××××××××

Q:MFC的导火索是啥?

A:TheAPP

×××××××××××××××××××××××

以上是背景信息。

所以看懂程序第一步:

熟悉MFC类的架构  MFC家族的七大姑八大姨 要门清,谁是谁的儿子  ? 谁的谁的孙子? 谁是谁的远方表哥?这都要清楚。

MFC就像一个大家庭,这里面有些是亲生的 有些是包养的  这些都要熟悉才好。

看懂程序第二步:

MFC里面有些程序自己写的类 ,这些有些是完全和MFC没有关系。我称之为 MFC家族的客人,有些在在程序员撮合剩下的儿子 孙子,我成之为新生代。

看懂程序第三步:知晓MFC六大机制

看懂程序第四步:顺着导火索 把程序在心中运行一遍。

后记:将程序的框架提炼出来,搞定 收工。。。。。来! 干了这杯二锅头。。。

如何看MFC程序的更多相关文章

  1. MFC-01-Chapter01:Hello,MFC---1.3 第一个MFC程序(01)

    #include <afxwin.h> class CMyApp : public CWinApp { public: virtual BOOL InitInstance(); }; cl ...

  2. MFC程序执行顺序 .

    1.创建Application object对象theApp 程序一开始生产一个(且只有一个)Application object对象theApp,也即一个CWinApp对象,这个全局对象一产生,便执 ...

  3. cmake编译dcmtk,并利用vs2010 进行开发mfc 程序

    这几天要处理 医学图像数据,经同学推荐 采用 dcmtk 关于 编译 dcmtk 是可参考如下blog 1. http://blog.csdn.net/okaimee/article/details/ ...

  4. MFC六大核心机制之一:MFC程序的初始化

    很多做软件开发的人都有一种对事情刨根问底的精神,例如我们一直在用的MFC,很方便,不用学太多原理性的知识就可以做出各种窗口程序,但喜欢钻研的朋友肯定想知道,到底微软帮我们做了些什么,让我们在它的框架下 ...

  5. MFC程序的启动过程——先全局对象theApp(第一入口),后WinMain(真正入口),会引爆pApp->InitInstance从而创建窗口(程序员入口)

    原文出自:http://blog.csdn.net/yuvmen/article/details/5877271 了解MFC程序的启动过程,对于初学者来讲,了学习MFC很有帮助:对于不常用VC的人来说 ...

  6. vc++深入跟踪MFC程序的执行流程

    在MFC程序设计的学习过程中最令人感到难受,甚至于有时会动摇学习者信心的就是一种对于程序的一切细节都没有控制权的感觉.这种感觉来源于学习者不知道一个MFC程序是如何运行起来的(即一个MFC程序的执行流 ...

  7. 深入跟踪MFC程序的执行流程

    来源: http://blog.csdn.net/ljianhui/article/details/8781991 在MFC程序设计的学习过程中最令人感到难受,甚至于有时会动摇学习者信心的就是一种对于 ...

  8. [转]《深入浅出MFC》– MFC程序的生死因果

    1.首先MFC程序需要哪些函数库? Windows C Runtime函数库 LIBC.LIB       C Runtime函数库的静态链接版本 MSVCRT.LIB     C Runtime函数 ...

  9. C++MFC编程笔记day01 MFC介绍、创建MFC程序和重写消息处理

    一.MFC概念和作用 1.全称Microsoft Foundation Class Library,我们称为微软基础类库,封闭了绝大部分的win32 Api函数,C++语法中的数据结构,程序的运行流程 ...

随机推荐

  1. python中的字典 和 集合

    python中字典是一种key-value的数据类型 字典的特性: 1.无序的 2.key必须的唯一的,so,字典天生去重 语法: 增加 修改 删除 查找 多级字典嵌套及操作 字典的其他用法 #set ...

  2. backbone.js初探(转)

    BackBone是JavaScript frameworks for creating MVC-like web applications,最近流行的用来建立单页面web application的工具 ...

  3. 【BZOJ】1642: [Usaco2007 Nov]Milking Time 挤奶时间(dp)

    http://www.lydsy.com/JudgeOnline/problem.php?id=1642 果然没能仔细思考是不行的.. 以后要静下心来好好想,不要认为不可做..... 看了题解... ...

  4. mac zsh选择到行首的快捷键

    Mac OS X 下zsh切换窗口的快捷键:Shift-Command-←. 移动到当前命令行的行首,使用快捷键[Ctrl][A].移动到当前命令行的行尾,使用快捷键[Ctrl[E].

  5. Linux命令在线中文手册

    很好的Linux学习手册:http://linux.51yip.com/ 来源:http://blog.51yip.com/

  6. Fel初认识

    Fel在源自于企业项目,设计目标是为了满足不断变化的功能需求和性能需求. Fel是开放的,引擎执行中的多个模块都可以扩展或替换.Fel的执行主要是通过函数实现,运算符(+.-等都是Fel函数),所有这 ...

  7. 【BZOJ2423】[HAOI2010]最长公共子序列 DP

    [BZOJ2423][HAOI2010]最长公共子序列 Description 字符序列的子序列是指从给定字符序列中随意地(不一定连续)去掉若干个字符(可能一个也不去掉)后所形成的字符序列.令给定的字 ...

  8. 解决<pre>标签里的文本换行(兼容IE, FF和Opera等)

      我们都知道<pre> 标签可定义预格式化的文本,一个常见应用就是用来表示计算机的源代码.被包围在 pre 元素中的文本通常会保留空格和换行符,但不幸的是,当你在<pre>标 ...

  9. node sever

    一.基础创建服务器 // 引入Http var http = require("http"); // 创建服务器 http.createServer(function(reques ...

  10. CentOS6.7 通过yum在线安装MySQL5.7

    一.安装1.检测系统是否自带安装mysql yum list installed | grep mysql 发现系统自带依赖库:mysql-libs.x86_64 2.删除系统自带的mysql及其依赖 ...