对于一个标准的MFC的程序,弃去细枝末节,其主要的初始化流程主要如下:
首先是基本类的内容的声明与实现:
这些通常由VS内部自动生成,包含了一些MFC类的基本结构:
//MFC.h
#pragma once
//最基础的基本类型的定义
#define BOOL int
#define TRUE 1
#define FALSE 0
#include<iostream>
using namespace std;
class CObject
{
public:
CObject::CObject(){}
CObject::~CObject() {}
};
class CCmdTarget : public CObject
{
public:
CCmdTarget::CCmdTarget() {}
CCmdTarget::~CCmdTarget() {}
};
class CWinThread :public CCmdTarget
{
public:
CWinThread::CWinThread() {}
CWinThread::~CWinThread() {}
virtual BOOL InitInstance(){
cout << "CWinThread::Instance"<<endl;
return TRUE;
}
virtual int Run() {
cout << "CWinThread::Run" << endl;
return 1;
}
};
class CWnd;
class CWinApp : public CWinThread
{
public:
CWinApp* m_pCurrentWinApp;
CWnd* m_pMainWnd;
public:
CWinApp::CWinApp() {
m_pCurrentWinApp = this;
}
CWinApp::~C