显示未定义的类(新手,请不要笑)

suhk 2003-10-15 11:10:49
#include "MySocket.h"

class CMySocket;

class CTalk1Dlg : public CDialog
{
// Construction
public:
CTalk1Dlg(CWnd* pParent = NULL); // standard constructor

// Dialog Data
//{{AFX_DATA(CTalk1Dlg)
enum { IDD = IDD_TALK1_DIALOG };
CListBox m_listSent;
CListBox m_listReceived;
CComboBox m_cmbType;
CButton m_btnConnect;
CString m_strMsg;
CString m_strServName;
int m_nServPort;
//}}AFX_DATA

// ClassWizard generated virtual function overrides
//{{AFX_VIRTUAL(CTalk1Dlg)
protected:
virtual void DoDataExchange(CDataExchange* pDX); // DDX/DDV support
//}}AFX_VIRTUAL

// Implementation
protected:
HICON m_hIcon;

// Generated message map functions
//{{AFX_MSG(CTalk1Dlg)
virtual BOOL OnInitDialog();
afx_msg void OnSysCommand(UINT nID, LPARAM lParam);
afx_msg void OnPaint();
afx_msg HCURSOR OnQueryDragIcon();
afx_msg void OnSelchangeComboType();
//}}AFX_MSG
DECLARE_MESSAGE_MAP()
public:
CMySocket m_pListenSocket;
CMySocket m_sConnectSocket;
};

最后两句的错误提示是:
f:\1\talk1\talk1dlg.h(55) : error C2079: 'm_pListenSocket' uses undefined class 'CMySocket',上面不是已经定义了么?请指点。

...全文
146 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
yintongshun 2003-10-15
  • 打赏
  • 举报
回复
忘了说,是这儿的,去掉CMySocket
CMySocket m_pListenSocket;
CMySocket m_sConnectSocket;
yintongshun 2003-10-15
  • 打赏
  • 举报
回复
把 class CMySocket;去掉,类还没生成不能用
quanch 2003-10-15
  • 打赏
  • 举报
回复
只有你定义的成员变量是对象指针时,可以用你的方法申明“class CTalkDlg”,并且要在实现CPP中INCLUDE该类定义的头文件,像你这样定义对象实体不能这么申明类,只能包含该类的定义头文件。
cafeeee 2003-10-15
  • 打赏
  • 举报
回复
在“class CTalkDlg”前添加

#include "MySocket.h"
阿甘 2003-10-15
  • 打赏
  • 举报
回复
把 class CMySocket;去掉
suhk 2003-10-15
  • 打赏
  • 举报
回复
谢谢各位。
如果去掉class CMySocket,就多了4个错误,提示是:
f:\1\talk1\talk1dlg.h(55) : error C2146: syntax error : missing ';' before identifier 'm_pListenSocket'
f:\1\talk1\talk1dlg.h(55) : error C2501: 'CMySocket' : missing storage-class or type specifiers
f:\1\talk1\talk1dlg.h(55) : error C2501: 'm_pListenSocket' : missing storage-class or type specifiers
f:\1\talk1\talk1dlg.h(56) : error C2146: syntax error : missing ';' before identifier 'm_sConnectSocket'
f:\1\talk1\talk1dlg.h(56) : error C2501: 'CMySocket' : missing storage-class or type specifiers
f:\1\talk1\talk1dlg.h(56) : error C2501: 'm_sConnectSocket' : missing storage-class or type specifiers
去掉CMySocket m_pListenSocket;前面的CMySocket会出现错误更多,
quanch(Lurker)提示的很有道理,但去掉也不行,真不知道问题出在那里。

18,356

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC 网络编程
c++c语言开发语言 技术论坛(原bbs)
社区管理员
  • 网络编程
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧