从网上找了很多答案,但是都不行,请大家看看
本帖最后由 sh9ming 于 2012-12-28 22:11:48 编辑 VS2008报错:
>Hello.cpp
1> WINVER not defined. Defaulting to 0x0600 (Windows Vista)
1>d:\study\myvcapp\myhello\myhello\hello.cpp(4) : error C2146: 语法错误 : 缺少“;”(在标识符“myHello”的前面)
1>d:\study\myvcapp\myhello\myhello\hello.cpp(4) : error C4430: 缺少类型说明符 - 假定为 int。注意: C++ 不支持默认 int
C++代码
Hello.h
class CHello :
public CWinApp
{
public:
virtual BOOL InitInstance();
};
class CMainWin :
public CFrameWnd
{
public :
CMainWin();
protected:
afx_msg void OnPaint();
DECLARE_MESSAGE_MAP()
}
Hello.cpp
#include <afxwin.h>
#include "Hello.h"
CHello myHello;
BOOL CHello::InitInstance()
{
m_pMainWnd = new CMainWin;
m_pMainWnd ->ShowWindow(m_nCmdShow);
m_pMainWnd ->UpdateWindow();
return TRUE;
}
BEGIN_MESSAGE_MAP(CMainWin,CFrameWnd)
ON_WM_PAINT()
END_MESSAGE_MAP()
CMainWin::CMainWin()
{
Create(NULL,_T("Hello MFC"));
}
void CMainWin::OnPaint()
{
CPaintDC dc(this);
CRect rect;
GetClientRect(&rect);
dc.DrawText(_T("Hello"),-1,&rect,DT_SINGLELINE|DT_VCENTER);
}
照书敲的代码,只是书上是VC6.0,我用的是VS2008
谢谢大家!!
[解决办法]
请包含hello的头文件
[解决办法]
project->mfc project.
[解决办法]
class CMainWin :
{
xxxx
};
[解决办法]
你建的是MFC工程还是Win32控制台的工程。控制台的话在工程设置里面,设置使用MFC库
[解决办法]
class CMainWin :
public CFrameWnd
{
public :
CMainWin();
protected:
afx_msg void OnPaint();
DECLARE_MESSAGE_MAP()
};
缺少;