版权声明:本文为博主原创文章,转载请注明原文链接 https://blog.csdn.net/qq_36922927/article/details/83153853
环境:windows10+vs2017
需要两个类:
1,CMyWnd,继承自CFrameWnd(窗口框架类,窗口有就是这个类的实例化对象)
2,CMyApp,继承自CWinApp(app类,在这个类中的InitInstance方法中实例化窗口,初始化自己的窗口类型成员变量)
使用vs2017开发过程:
1,选择windows桌面的windows桌面向导
2,应用程序类型选择 Windowsy应用程序(.exe),其他选项勾选 空项目
3,解决方案视图-》源文件-》右键-》添加-》新建项-》c++文件
名称改为 :MyApp.cpp
4,项目属性配置:
项目-》属性-》主要修改两个地方,第一个是字符集编码使用 "未设置" ,第二个是 “MFC的使用”这一选项卡,选择 动态mfc库或者是静态mfc库都可以
5,MyApp.cpp头文件必须要包含 # include <afxwin.h>,这是使用mfc必须的
6,开始编写代码,两个类
#include<afxwin.h>
class CMyWnd :public CFrameWnd {//c++的继承方式,public,private,protected修饰会有不同的含义
public:
CMyWnd() {
//Create(NULL, "MyAppWnd");
}
};
class CMyApp :public CWinApp {
BOOL InitInstance();
};
BOOL CMyApp::InitInstance() {
CMyWnd *pf = new CMyWnd;
pf->Create(NULL, "cmywnd");
pf->ShowWindow(m_nCmdShow);
pf->UpdateWindow();
this->m_pMainWnd = pf;
return TRUE;
}
//实例化一个CMyApp
CMyApp TheApp;
先编译,再运行
效果:
过程中可能遇到的问题:
1,字符换常量,爆红
解决:确保字符集编码为 “未设置”,见第4步
2,注意最后需要实例化一个CMyApp对象,这是程序本尊
由于c++学习已经间隔了很长一段时间,有一些基础知识需要再次梳理一下
继承,修饰符,virture,inline这些和java多少有一些区别