Win32应用程序的入口是WinMain(),而在MFC中却找不到WinMain函数,这个家伙究竟去了哪里了呢?

在MFC中最开始的操作往往是这样的:

先定义一个全局的theApp,比如CWinTestApp theApp;这一步会调用到CWinTestApp的构造函数;

而后实际上会调到WinMain()函数,只不过这个过程是runtime去调用的,我们看不到罢了.

百度上的观点,批判地去思考:

https://zhidao.baidu.com/question/198100429.html

WinMain()跟main()函数一样,是用run time自己调用的。C++程序启动的顺序是这样的:
1. 构造全局对象。在MFC程序里,theApp就是全局对象。因为theApp的类型是CTestApp,所以CTestApp的构造函数会被调用
2. 调用main()或者WinMain()。如果是MFC程序,会默认提供一个WinMain()函数的实现,你不需要自己另外写。如果你自己另外写一个WinMain(),会引起Link Error。
以上两步都是C++ Run Time做的,不需要你自己写什么代码。你可以认为C++就是这么规定的。
补充:
是,有代码去调用它。但是这些代码不需要你来写,对你来讲也没有什么意义。这些代码属于runtime

MFC的WinMain在哪呢相关推荐

  1. 《深入浅出MFC》第六章 MFC程序的生死因果

    SDK程序设计的第一要务是理解最重要的数个API函数的意义和用法,MFC程序设计的第一要务则是理解几个最重要的类,最基本的两个类为CWin App和CFrameWnd. 开发MFC程序需要的函数库:W ...

  2. 学习MFC首先要知道的--程序执行顺序

    MFC的程序执行顺序 很多刚学MFC的人都会被MFC给弄的晕头转向.以前传统的C语言中的main()不见了,window sdk api 中的WinMain()函数也不见了,到底用MFC编写的程序是如 ...

  3. mfc编程 孙鑫_孙鑫VC++视频教程笔记-(3)MFC程序框架的剖析 附1-SDI程序流程图

    1,寻找WinMain人口: 在安装目录下找到MFC文件夹下的SRC文件夹,SRC下是MFC源代码. 路径:MFC|SRC|APPMODUL.CPP: _tWinMain(HINSTANCE hIns ...

  4. 深入浅出话VC++(2)——MFC的本质

    一.引言 上一专题中,纯手动地完成了一个Windows应用程序,然而,在实际开发中,我们大多数都是使用已有的类库来开发Windows应用程序.MFC(Microsoft Foundation Clas ...

  5. 六、MFC 程序的生死因果 (学习笔记)

    MFC程序的生死因果 项目HELLO 理想如果不向实际做点妥协,理想就会归于尘土. 中华民国还得十次革命才得建立,对象导向怎能把一切传统都抛开. 以传统的C/SDK 撰写Windows 程序,最大的好 ...

  6. 如何优雅的写UI——(1)MFC六大核心机制-程序初始化

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

  7. 深入浅出MFC学习笔记(第6章 :MFC程序的生死因果)

    第六章:MFC程序的生死因果 本章主要是从MFC程序代码中,找出一个windows程序原本该有的程序入口点.窗口类注册.窗口产生.消息循环.窗口函数等操作.抽丝剥茧彻底理解一个MFC程序的诞生与结束. ...

  8. MFC底层窗口的实现

    MFC底层窗口的实现 代码: # include <windows.h> //底层实现窗口的文件 //6.处理窗口过程 此过程可先跳过 是最后一步 LRESULT CALLBACK Win ...

  9. mfc cedit 默认显示内容_VS2013/MFC编程学习(一)

    一.前言 1.1 VC++简介 VC++全称是Visual C++,是由微软提供的C++开发工具,它与C++的根本区别就在于,C++是语言,而VC++是用C++语言编写程序的工具平台.VC++不仅是一 ...

最新文章

  1. 提供《华容道与数据结构》代码供测试
  2. 将传统的落后WAN转换为SD-WAN
  3. Mysql5.7中子查询时order by与group by合用无效的解决办法
  4. 【软考-软件设计师】计算机系统硬件基本组成
  5. win10无线投屏_日臻薄技 | 手机如何投屏到电脑
  6. 判断整数序列是不是二元查找树的后序遍历结果
  7. FreeBSD长模式不兼容
  8. css div设置inline-block后 div顶部对齐
  9. lisp遍历表中所有顶点_三十张图片让你彻底弄明白图的两种遍历方式:DFS和BFS...
  10. 音视频开发(3)---ffmpeg
  11. mysql更改执行计划_11g中 connect by 语句执行计划改变
  12. php批量下载TXT中的URL,需求是这样,再不改变目录结构的前提下,通过URL,批量下载文件,我已经写好了一点儿了...
  13. Proteus安装图文教程
  14. 学计算机穿格子衬衫的男人,教你成为穿格子衬衫的帅气理工男
  15. 计算机键盘上的句号键在哪,电脑键盘句号是哪个键
  16. 双十一购买什么最划算,最值得入手的几款数码好物推荐
  17. 06.图像识别与卷积神经网络------《Tensorflow实战Google深度学习框架》笔记
  18. 51nod 1718 Cos的多项式 【数学】
  19. [转载]芋道 Soul 极简入门(国产微服务网关)
  20. springboot整合jd freemarker

热门文章

  1. 轻松理解递归的基本思想
  2. java计算机毕业设计企业门户网站源码+系统+数据库+lw文档+mybatis+运行部署
  3. 高性能网站建设指南-前端性能优化(二)
  4. WPhone7 随笔 (一)
  5. 40张动图揭示各种传感器工作原理!
  6. MySQL多数据源笔记5-ShardingJDBC实战
  7. 第九次 Scrum Meeting
  8. 别人家都装了吸顶音响,你家还没装?OUT了
  9. Android平台游戏开发引擎使用指引
  10. 【Python编程入门】引言