Я пытался сократить иностранный код. Я мог бы сохранить одну переменную.
Следующий приведенный код в порядке и показывает фрейм 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; // inspublic:
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;
В чем дело?
Проблема в переопределении переменной-члена MFC_Tutorial_Window *m_pMainWnd;
без этого ряда это будет работать.
Других решений пока нет …