孙鑫Lesson3 principle

本文详细介绍了MFC(Microsoft Foundation Classes)框架中各个核心类的关系及其初始化流程,包括CObject、CCmdTarget、CDC等关键组件,并跟踪了从_tWinMain到CWinThread运行的核心过程。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

MFC:

CObject:CCmdTargetCDCCExceptionCFileCMenuCGdiObject

CCmdTarget:CWinThread、CWnd、CDocument、COleControlContainer

CDC:CClientDC、CPaintDC、CWindowDC、CMetaFileDC

CGdiObjectCBitmapCBrushCFontCPenCRgnCPalette

CWinThread:CWinapp

CWnd:CFrameWndCViewCDialog


appmodul.cpp:_tWinMain,AfxWinMain
testapp.cpp:theApp,构造函数—>调取基类的构造函数CWinApp>appcore.cpp:CWinapp::CWinapp
appmodul.cpp:_tWinMain 入口函数
winman.app:AfxWinMain 入口函数
testapp.cpp:调用派生类的InitInstance 初始化实例
wincore.app:AfxEndDeferRegisterClass 注册
winFrm.cpp:CFrameWnd::PreCreateWindow 创建窗口、CFrameWnd::Create
winocre.app:CreateEx

thrdcore.cpp:CWinThread::Run()CWinThread::PumpMessage()AfxInternalPumpMessage()


testapp.cpp(theApp->testapp::testapp())-->AppCore.cpp(CWinapp::CWinapp)-->

appmodul.cpp(_tWinMain 入口函数)-->winman.app(AfxWinMain入口函数)-->

testapp.cpp(调用派生类的InitInstance 初始化实例) -->

-WinFrm.cpp(CFrameWnd::LoadFrame)-->wincore.app(AfxEndDeferRegisterClass注册)-->WinFrm.cpp(CFrameWnd::PreCreateWindow创建窗口)-->wincore.app(AfxEndDeferRegisterClass注册)-->

>wincore.app(AfxRegisterWndClass)-->WinFrm.cpp(CFrameWnd::Create)-->wincore.app(CWnd::CreateEx)-->WinFrm.cpp(CFrameWnd::PreCreateWindow)-->wincore.app(CWnd::CreateEx)-->

wincore.app(AfxEndDeferRegisterClass注

册)-->wincore.app(CWnd::CreateEx)-->thrdcore.cpp(CWinThread::Run()、CWinThread::PumpMessage()、AfxInternalPumpMessage())


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值