深入浅出MFC—Frame1[通俗易懂]

深入浅出MFC—Frame1[通俗易懂]#includeclassCObject{public: CObject() { printf(“CObjectConstructor\n”); } ~CObject() { printf(“CObjectDestructor\n”); }};classCCmdTarget:publicCObject{publ

大家好,又见面了,我是你们的朋友全栈君。

#include <stdio.h>

class CObject
{
public:
	CObject()
	{
		printf("CObject Constructor \n");
	}
	~CObject()
	{
		printf("CObject Destructor \n");
	}
};

class CCmdTarget:public CObject
{
public:
	CCmdTarget()
	{
		printf("CCmdTarget Constructor \n");
	}
	~CCmdTarget()
	{
		printf("CCmdTarget Destructor \n");
	}
};

class CWinThread:public CCmdTarget
{
public:
	CWinThread()
	{
		printf("CWinThread Constructor\n");
	}
	~CWinThread()
	{
		printf("CWinThread Destructor \n");
	}
};

class CWinApp:public CWinThread
{
public:
	CWinApp *m_pCurrentWinApp;
public:
	CWinApp()
	{
		m_pCurrentWinApp = this;
		printf("CWinApp Constructor \n");
	}
	~CWinApp()
	{
		printf("CWinApp Destructor \n");
	}
};

class CDocument :public CCmdTarget
{
public:
	CDocument()
	{
		printf("CDocument Constructor \n");
	}
	~CDocument()
	{
		printf("CDocument Destructor \n");
	}
};

class CWnd:public CCmdTarget
{
public:
	CWnd()
	{
		printf("CWnd Constructor \n");
	}
	~CWnd()
	{
		printf("CWnd Destructor \n");
	}
};

class CFrameWnd:public CWnd
{
public:
	CFrameWnd()
	{
		printf("CFrameWnd Constructor \n");
	}
	~CFrameWnd()
	{
		printf("CFrameWnd Destructor \n");
	}
};

class CView:public CWnd
{
public:
	CView()
	{
		printf("CView Constructor \n");
	}
	~CView()
	{
		printf("CView Destructor \n");
	}
};

//
class CMyWinApp:public CWinApp
{
public:
	CMyWinApp()
	{
		printf("CMyWinApp Constructor \n");
	}
	~CMyWinApp()
	{
		printf("CMyWinApp Destructor \n");
	}
};

CMyWinApp theApp;

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

class CMyFrameWnd:public CFrameWnd
{
public:
	CMyFrameWnd()
	{
		printf("CMyFrameWnd Constructor \n");
	}
	~CMyFrameWnd()
	{
		printf("CMyFrameWnd Destructor \n");
	}
};


void main()
{
	CWinApp *pApp = AfxGetApp();
}

//CObject    Constructor
//CCmdTarget Constructor
//CWinThread Constructor
//CWinApp    Constructor
//CMyWinApp  Constructor

//CMyWinApp  Destructor
//CWinApp    Destructor
//CWinThread Destructor
//CCmdTarget Destructor
//CObject    Destructor

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/148847.html原文链接:https://javaforall.cn

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)


相关推荐

  • QStringList 去除重复项算法赏析

    QStringList 去除重复项算法赏析测试用例:QStringListlist;list&lt;&lt;"2222"&lt;&lt;"xxx"&lt;&lt;"1111"&lt;&lt;"2222"&lt;&lt;"xxxx"&lt;&lt;"1111";intn=list.removeDuplica

  • mongodb介绍

    mongodb介绍mongodb介绍

  • Node.js详细安装教程

    Node.js详细安装教程一、安装环境1、本机系统:Windows10Pro(64位)2、Node.js:v6.9.2LTS(64位)二、安装Node.js步骤1、下载对应你系统的Node.js版本:https://nodejs.org/en/download/2、选安装目录进行安装3、环境配置4、测试三、前期准备1、Node.js简介简单的说Node.js就是运行在服务端的JavaScript。Node.js是一个基于ChromeV8引擎的JavaScript运行环境。Node.js使用

  • 英语日常用语--给自己没事时候看看

    英语日常用语--给自己没事时候看看

  • 阿里云的ddns_阿里云docker部署

    阿里云的ddns_阿里云docker部署文档:阿里云DDNSjava实现.note链接:http://note.youdao.com/noteshare?id=c2fe233164c3756b38693d78f31347ed如果有小伙伴发现bug或者有建议请及时联系

    2022年10月30日
  • 如何写软件项目技术标

    如何写软件项目技术标技术标作为一个初期评价软件供应商的重要标准之一,需要覆盖多方面的考虑因素,从需求的理解,到系统的设计,到项目的实施与管理,以及项目的验收与后期支持。那么我们如何来编写一个完整的技术标呢?第一,项目概述   项目情况的一个综合介绍,这是一个综述,通过这个综述说明项目的背景

发表回复

您的电子邮箱地址不会被公开。

关注全栈程序员社区公众号