提示的错误信息是:error C2146: syntax error : missing ';' before 
                                              identifier 'm_SocketClient'
我调用的代码是:
#include "SocketServer.h"
#include "SocketClient.h"
#include "MyMessage.h"class SocketServer;
class SocketClient;
class MyMessage;/////////////////////////////////////////////////////////////////////////////
// CTransFileDlg dialogclass CTransFileDlg : public CDialog
{
//attributes
public:
void HandleClose();
void HandleAccept();
CStringArray m_LocalShareFiles;
CStringArray m_RemoteShareFiles;
CStringArray m_NeedTransferFiles;
CStringArray m_NeedReceiveFiles;
BOOL m_bClient;
BOOL m_bOnLine;
int  m_iPort;
CString m_sIP;
SocketClient m_SocketClient;
SocketServer m_SocketServer;
就是在SocketClient m_SocketClient;这一行题是错误。有把这个提示为外部类的类,重新加进去的方法吗?

解决方案 »

  1.   

    如果在你的头文件中这么声明的话
    class SocketServer;
    class SocketClient;
    class MyMessage;
    然后在.cpp文件中#include 相应的头文件
    就不能这么定义
    SocketClient m_SocketClient;
    只能定义成指针SocketClient* m_pSocketClient;
      

  2.   

    呵呵,这个是什么呢?楼主还是基本的C++没有学好class SocketServer;
    class SocketClient;
    class MyMessage;应该改成类的对象  CSocketServer sockServer;这样的东东呵呵而且最好是定义为你这个类的成员变量,放到头文件中定义呵呵
      

  3.   

    看错了-_-b楼主看看 SocketClient 是个类的名字末?估计不是类的名字吧?