MFC六大关键技术之模拟

先列出类的层次:

testmfc

以下代码,模拟MFC运行的类,纯是一个玩具程序,主要是为后面的技术服务,作一个基础。

/********************************************************************
	created:	2010-7-13 22:40
	filename: 	MFC.h
	author:		luis
	purpose:	
*********************************************************************/
#pragma once
typedef long BOOL;
#define FALSE   0
#define TRUE    1
#define NULL    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::InitInstance \n";
		return TRUE;
	}
	virtual int Run() {
		cout << "CWinThread::Run \n";
		return 1;
	}
};

class CWnd;

class CWinApp : public CWinThread
{
public:
	CWinApp* m_pCurrentWinApp;
	CWnd* m_pMainWnd;

public:
	CWinApp::CWinApp() { m_pCurrentWinApp = this; }
	CWinApp::~CWinApp() { }

	virtual BOOL InitApplication() {cout << "CWinApp::InitApplication \n";return TRUE;}
	virtual BOOL InitInstance() {cout << "CWinApp::InitInstance \n";return TRUE;}
	virtual int Run() 
	{
		cout << "CWinApp::Run \n";
		return CWinThread::Run();
	}
};


class CDocument : public CCmdTarget
{
public:
	CDocument::CDocument() { }
	CDocument::~CDocument() { }
};


class CWnd : public CCmdTarget
{
public:
	CWnd::CWnd() { }
	CWnd::~CWnd() { }

	virtual BOOL Create();
	BOOL CreateEx();
	virtual BOOL PreCreateWindow();
};

class CFrameWnd : public CWnd
{
public:
	CFrameWnd::CFrameWnd() { }
	CFrameWnd::~CFrameWnd() { }
	BOOL Create();
	virtual BOOL PreCreateWindow();
};

class CView : public CWnd
{
public:
	CView::CView() { }
	CView::~CView() { }
};


// global function
CWinApp* AfxGetApp();


/********************************************************************
	created:	2010-7-13 23:02
	filename: 	MFC.cpp
	author:		luis
	purpose:	
*********************************************************************/
#include "StdAfx.h"
#include "MFC.h"

#include "my.h" // 原本含入mfc.h 就好,但為了CMyWinApp 的定義,所以...

extern CMyWinApp theApp;

BOOL CWnd::Create()
{
	cout << "CWnd::Create \n";
	return TRUE;
}

BOOL CWnd::CreateEx()
{
	cout << "CWnd::CreateEx \n";
	PreCreateWindow();
	return TRUE;
}

BOOL CWnd::PreCreateWindow()
{
	cout << "CWnd::PreCreateWindow \n";
	return TRUE;
}

BOOL CFrameWnd::Create()
{
	cout << "CFrameWnd::Create \n";
	CreateEx();
	return TRUE;
}


BOOL CFrameWnd::PreCreateWindow()
{
	cout << "CFrameWnd::PreCreateWindow \n";
	return TRUE;
}


CWinApp* AfxGetApp()
{
	return theApp.m_pCurrentWinApp;
}


/********************************************************************
	created:	2010-7-13 23:02
	filename: 	MY.h
	author:		luis
	purpose:	
*********************************************************************/
#pragma once

#include "mfc.h"

class CMyWinApp : public CWinApp
{
public:
	CMyWinApp::CMyWinApp() { }
	CMyWinApp::~CMyWinApp() { }

	virtual BOOL InitInstance();
};

class CMyFrameWnd : public CFrameWnd
{
public:
	CMyFrameWnd();
	~CMyFrameWnd() { }
};



/********************************************************************
	created:	2010-7-13 23:02
	filename: 	MY.cpp
	author:		luis
	purpose:	
*********************************************************************/
#include "StdAfx.h"
#include "MY.h"


CMyWinApp theApp; // global object


BOOL CMyWinApp::InitInstance()
{
	cout << "CMyWinApp::InitInstance \n";
	m_pMainWnd = new CMyFrameWnd;
	return TRUE;

}

CMyFrameWnd::CMyFrameWnd()
{
	cout << "CMyFrameWnd::CMyFrameWnd \n";
	Create();
}

//---------------------------------------------------------------
// main
//---------------------------------------------------------------
void main()
{

	CWinApp* pApp = AfxGetApp();

	pApp->InitApplication();
	pApp->InitInstance();
	pApp->Run();
}
## 01、数据介绍 数据整理全国30个省份制造业细分行业产值,能够反映一定时期内细分行业工业生产总规模和总水平的指标,是计算工业生产发展速度和主要比例关系、计算工业产品销售率等其他经济指标的基础。先进制造业数据可用于两业融合测算。 数据名称:全国30省-制造业细分行业产值/先进制造业细分行业产值数据 数据年份:2001-2022年 ## 02、数据指标 农副食品加工业;食品制造业;饮料制造业;烟草制造业;纺织业;纺织服装鞋帽制造业;皮革、毛皮、羽毛(绒)极其制品业;木材加工及木、竹、藤、棕、草制品业;家具制造业;造纸及纸制品业;印刷业和记录媒介的复制;文教体育用品制造业;石油加工、炼焦及核燃料加工业化;学原料及化学制品制造业;医药制造业;化学纤维制造业;橡胶和塑料制品制品业;非金属矿物制品业;黑色金属冶炼及压延加工业;有色金属冶炼及压延加工业;金属制品业;通用设备制造业;专用设备制造业;汽车制造业;其他运输设备制造业;电气机械及器材制造业;通信设备计算机及其他电子设备制造业;仪器仪表及文化、办公用机械制造业;其他制造业;废弃资源和废旧材料回收加工业;制造业总产值 印刷业和记录媒介的复制;石油加工、炼焦及核燃料加工业;化学原料及化学制品制造业;医药制造业;橡胶和塑料制品制品业;非金属矿物制品业;黑色金属冶炼及压延加工业;有色金属冶炼及压延加工业;金属制品业;通用设备制造业;专用设备制造业;汽车制造业;其他运输设备制造业;电气机械及器材制造业;通信设备计算机及其他电子设备制造业;仪器仪表及文化、办公用机械制造业;废弃资源和废旧材料回收加工业
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值