MFC的WinMain在哪呢

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

原文链接: https://www.cnblogs.com/Stephen-Qin/p/12313871.html

欢迎关注

微信关注下方公众号,第一时间获取干货硬货;公众号内回复【pdf】免费获取数百本计算机经典书籍;

也有高质量的技术群,里面有嵌入式、搜广推等BAT大佬

    MFC的WinMain在哪呢

原创文章受到原创版权保护。转载请注明出处:https://www.ccppcoding.com/archives/329547

非原创文章文中已经注明原地址,如有侵权,联系删除

关注公众号【高性能架构探索】,第一时间获取最新文章

转载文章受原作者版权保护。转载请注明原作者出处!

(0)
上一篇 2023年3月1日 下午5:11
下一篇 2023年3月1日 下午5:12

相关推荐