在AfxWinMain()函数中并没有看到有调用AfxEndDeferRegisterClass(),是系统自动调用的吗?

来源:百度知道 编辑:UC知道 时间:2024/06/19 02:09:57
如题,哪位高手能给出比较详细的解释?

该函数是在CWnd::PreCreateWindow()中调用的,并非直接在AfxWinMain()中函数。建议你看看孙鑫VC++教程的第三课:http://www.pconline.com.cn/pcedu/empolder/gj/vc/0607/820674.html

#define AfxDeferRegisterClass(fClass) AfxEndDeferRegisterClass(fClass)

这里首先AfxDeferRegisterClass(fClass)将其替换,其次
BOOL CFrameWnd::PreCreateWindow(CREATESTRUCT& cs)
{
if (cs.lpszClass == NULL)
{
VERIFY(AfxDeferRegisterClass(AFX_WNDFRAMEORVIEW_REG));
cs.lpszClass = _afxWndFrameOrView; // COLOR_WINDOW background
}
将其调用,最后自己多看会就会找到的嘿嘿仔细一点就好了