0
我试图缩短外国代码。我认为我可以保存一个变量。C++不正确不需要重新声明类成员变量MFC手工解决方案/项目MS VS 2015
以下给出的代码是确定的,并显示一个Windows框架。
#include <afxwin.h>
// from source: http://www.codersource.net/2010/01/30/mfc-tutorial-part-1/
class MFC_Tutorial_Window :public CFrameWnd
{
public:
MFC_Tutorial_Window()
{
Create(NULL, "MFC Tutorial Part 1 CoderSource Window");
}
};
class MyApp :public CWinApp
{
MFC_Tutorial_Window *wnd;
public:
BOOL InitInstance()
{
wnd = new MFC_Tutorial_Window();
m_pMainWnd = wnd;
m_pMainWnd->ShowWindow(1);
return 1;
}
};
MyApp theApp;
经过我的改名后,它不再起作用。没有生成错误。但它没有显示一个框架。
#include <afxwin.h>
// from source: http://www.codersource.net/2010/01/30/mfc-tutorial-part-1/
// and changed by me
class MFC_Tutorial_Window :public CFrameWnd
{
public:
MFC_Tutorial_Window()
{
Create(NULL, "MFC Tutorial Part 1 CoderSource Window");
}
};
class MyApp :public CWinApp
{
// del MFC_Tutorial_Window *wnd;
MFC_Tutorial_Window *m_pMainWnd; // ins
public:
BOOL InitInstance()
{
// del wnd = new MFC_Tutorial_Window();
// del m_pMainWnd = wnd;
m_pMainWnd = new MFC_Tutorial_Window(); // ins
m_pMainWnd->ShowWindow(1);
return 1;
}
};
MyApp theApp;
这是怎么回事?
你不重新声明变量'm_pMainWnd'?我不能在第一个代码中看到它的声明,那么为什么在第二个例子中创建成员变量'm_pMainWnd'?试着删除行'MFC_Tutorial_Window * m_pMainWnd;' –
现在它工作。谢谢你的提示。现在我可以理解这种行为。 – CarpeDiemKopi
Np队友,很高兴帮助。只是发布它的意见,所以你可以标记这个线程作为回答,问候:) –