创建了一个mfc工程,按理说winmain()函数放在appmodul.cpp文件中,可是我将appmodul.cpp改名或是删除,项目照样可以编译成功,为什么?

时间:2020-11-29 17:40:27
创建了一个mfc工程,按理说winmain()函数放在appmodul.cpp文件中,可是我将appmodul.cpp改名或是删除,项目照样可以编译成功,为什么?
因为入口函数winmain()的原代码是放在C:\Program Files\Microsoft Visual Studio\VC98\MFC\SRC\appmodul.cpp中,按理说,编译时会将这个文件编译到程序中去。可是怪的是,我将appmodul.cpp更名或者删除后,我的mfc项目依然可以编译成功。
我反而不知 appmodul.cpp 作用是什么了?

8 个解决方案

#1


那个是源码,编译的时候使用的是已经编译好的obj、lib

#2


如果将MFC源码都编译一遍,那个速度你是难以忍受的;否则要库文件干吗。

#3


那个仅仅是公开给我们看的,它编译在已经在library里了。

#4


公开部分源码也可以方便我们调试

#5


可是为什么如果在appmodul.cpp中设置一个断点,那么程序运行时确实会在那个断点中止一下呢?

#6


你可以自己写个DLL,然后你自己调用,在你的DLL代码里设置个断点(dll代码加到同一个工作区里) 他也会跳进去的,不跳进去怎么调试?

#7


我不明白的是,我并没将appmoudl.cpp这个文件加入到项目中来呀。
另外,编译时链入的是哪个文件呢?我好象手工更改 appmoudl.cpp 也没有什么影响,可是我找不到appmoudl.obj 这个文件呀。关键是链接时自动链接入的是哪一个文件呢?

#8


可惜没有人回答啊,我也想知道

#1


那个是源码,编译的时候使用的是已经编译好的obj、lib

#2


如果将MFC源码都编译一遍,那个速度你是难以忍受的;否则要库文件干吗。

#3


那个仅仅是公开给我们看的,它编译在已经在library里了。

#4


公开部分源码也可以方便我们调试

#5


可是为什么如果在appmodul.cpp中设置一个断点,那么程序运行时确实会在那个断点中止一下呢?

#6


你可以自己写个DLL,然后你自己调用,在你的DLL代码里设置个断点(dll代码加到同一个工作区里) 他也会跳进去的,不跳进去怎么调试?

#7


我不明白的是,我并没将appmoudl.cpp这个文件加入到项目中来呀。
另外,编译时链入的是哪个文件呢?我好象手工更改 appmoudl.cpp 也没有什么影响,可是我找不到appmoudl.obj 这个文件呀。关键是链接时自动链接入的是哪一个文件呢?

#8


可惜没有人回答啊,我也想知道