出错的两个头文件
为了简洁,系统自动生成的就直接删除了
SrvSock.h
#include "SrvRoom.h"
class CSrvSock : public CSocket
{
// Attributes
public:
// Operations
public:
CSrvSock();
virtual ~CSrvSock();
CSrvSock(CSrvRoom* pDlg);
protected:
CSrvRoom* m_pDlg;
};
SrvRoom.h
#include "SrvSock.h"
class CSrvRoom : public CDialog
{
private:
BOOL Init();
CSrvSock* m_pListen;
};
这样包含头文件会出现这样的错误:
e:\c_file\test\srvsock.h(24) : error C2629: unexpected 'class CSrvSock ('
e:\c_file\test\srvsock.h(24) : error C2238: unexpected token(s) preceding ';'
e:\c_file\test\srvsock.h(39) : error C2143: syntax error : missing ';' before '*'
e:\c_file\test\srvsock.h(39) : error C2501: 'CSrvRoom' : missing storage-class or type specifiers
e:\c_file\test\srvsock.h(39) : error C2501: 'm_pDlg' : missing storage-class or type specifiers
SrvSock.cpp
e:\c_file\test\srvroom.h(43) : error C2143: syntax error : missing ';' before '*'
e:\c_file\test\srvroom.h(43) : error C2501: 'CSrvSock' : missing storage-class or type specifiers
e:\c_file\test\srvroom.h(43) : error C2501: 'm_pListen' : missing storage-class or type specifiers
24对应SrvSock.h第11行,39对应SrvSock.h第14行,43对应SrvRoom.h第7行!
我也试过其他方法,比如把头文件包含在.cpp文件中,包含在stdafx.h中,或者包含在app.h中都会出现未定义或者以上这些错误!!!