新建一MFC基于对话框的程序ChatServer,支持Socket。插入一个Generic Class,命名为CSrvSocket,以public方式继承于CAsyncSocket。SrvSocket.h
--------------------------------------------------------------------------------------------
#if !defined(AFX_SRVSOCKET_H__AD84633D_8760_42B6_9D7E_403064FFB0D5__INCLUDED_)
#define AFX_SRVSOCKET_H__AD84633D_8760_42B6_9D7E_403064FFB0D5__INCLUDED_#if _MSC_VER > 1000
#pragma once
#endif // _MSC_VER > 1000#include "ChatServerDlg.h"class CSrvSocket : public CAsyncSocket
{
public:
CSrvSocket(CChatServerDlg * pDlg);
virtual ~CSrvSocket();private:
CChatServerDlg * m_pDlg;
};#endif
----------------------------------------------------------------------------------------------
ChatServerDlg.h
----------------------------------------------------------------------------------------------
#include "SrvSocket.h"//添加如下成员变量
private:
CSrvSocket * m_LiSocket;
CSrvSocket * m_ConSocket;
----------------------------------------------------------------------------------------------编译运行,提示错误:
Compiling...
ChatServer.cpp
d:\program files\microsoft visual studio\myprojects\chatserver\srvsocket.h(17) : error C2629: unexpected 'class CSrvSocket ('
d:\program files\microsoft visual studio\myprojects\chatserver\srvsocket.h(17) : error C2238: unexpected token(s) preceding ';'
d:\program files\microsoft visual studio\myprojects\chatserver\srvsocket.h(21) : error C2143: syntax error : missing ';' before '*'
d:\program files\microsoft visual studio\myprojects\chatserver\srvsocket.h(21) : error C2501: 'CChatServerDlg' : missing storage-class or type specifiers
d:\program files\microsoft visual studio\myprojects\chatserver\srvsocket.h(21) : error C2501: 'm_pDlg' : missing storage-class or type specifiers
ChatServerDlg.cpp
d:\program files\microsoft visual studio\myprojects\chatserver\srvsocket.h(17) : error C2629: unexpected 'class CSrvSocket ('
d:\program files\microsoft visual studio\myprojects\chatserver\srvsocket.h(17) : error C2238: unexpected token(s) preceding ';'
d:\program files\microsoft visual studio\myprojects\chatserver\srvsocket.h(21) : error C2143: syntax error : missing ';' before '*'
d:\program files\microsoft visual studio\myprojects\chatserver\srvsocket.h(21) : error C2501: 'CChatServerDlg' : missing storage-class or type specifiers
d:\program files\microsoft visual studio\myprojects\chatserver\srvsocket.h(21) : error C2501: 'm_pDlg' : missing storage-class or type specifiers
SrvSocket.cpp
d:\program files\microsoft visual studio\myprojects\chatserver\chatserverdlg.h(46) : error C2143: syntax error : missing ';' before '*'
d:\program files\microsoft visual studio\myprojects\chatserver\chatserverdlg.h(46) : error C2501: 'CSrvSocket' : missing storage-class or type specifiers
d:\program files\microsoft visual studio\myprojects\chatserver\chatserverdlg.h(46) : error C2501: 'm_LiSocket' : missing storage-class or type specifiers
d:\program files\microsoft visual studio\myprojects\chatserver\chatserverdlg.h(47) : error C2143: syntax error : missing ';' before '*'
d:\program files\microsoft visual studio\myprojects\chatserver\chatserverdlg.h(47) : error C2501: 'CSrvSocket' : missing storage-class or type specifiers
d:\program files\microsoft visual studio\myprojects\chatserver\chatserverdlg.h(47) : error C2501: 'm_ConSocket' : missing storage-class or type specifiers
Generating Code...
--------------------------------------------------------------------------------------------
#if !defined(AFX_SRVSOCKET_H__AD84633D_8760_42B6_9D7E_403064FFB0D5__INCLUDED_)
#define AFX_SRVSOCKET_H__AD84633D_8760_42B6_9D7E_403064FFB0D5__INCLUDED_#if _MSC_VER > 1000
#pragma once
#endif // _MSC_VER > 1000#include "ChatServerDlg.h"class CSrvSocket : public CAsyncSocket
{
public:
CSrvSocket(CChatServerDlg * pDlg);
virtual ~CSrvSocket();private:
CChatServerDlg * m_pDlg;
};#endif
----------------------------------------------------------------------------------------------
ChatServerDlg.h
----------------------------------------------------------------------------------------------
#include "SrvSocket.h"//添加如下成员变量
private:
CSrvSocket * m_LiSocket;
CSrvSocket * m_ConSocket;
----------------------------------------------------------------------------------------------编译运行,提示错误:
Compiling...
ChatServer.cpp
d:\program files\microsoft visual studio\myprojects\chatserver\srvsocket.h(17) : error C2629: unexpected 'class CSrvSocket ('
d:\program files\microsoft visual studio\myprojects\chatserver\srvsocket.h(17) : error C2238: unexpected token(s) preceding ';'
d:\program files\microsoft visual studio\myprojects\chatserver\srvsocket.h(21) : error C2143: syntax error : missing ';' before '*'
d:\program files\microsoft visual studio\myprojects\chatserver\srvsocket.h(21) : error C2501: 'CChatServerDlg' : missing storage-class or type specifiers
d:\program files\microsoft visual studio\myprojects\chatserver\srvsocket.h(21) : error C2501: 'm_pDlg' : missing storage-class or type specifiers
ChatServerDlg.cpp
d:\program files\microsoft visual studio\myprojects\chatserver\srvsocket.h(17) : error C2629: unexpected 'class CSrvSocket ('
d:\program files\microsoft visual studio\myprojects\chatserver\srvsocket.h(17) : error C2238: unexpected token(s) preceding ';'
d:\program files\microsoft visual studio\myprojects\chatserver\srvsocket.h(21) : error C2143: syntax error : missing ';' before '*'
d:\program files\microsoft visual studio\myprojects\chatserver\srvsocket.h(21) : error C2501: 'CChatServerDlg' : missing storage-class or type specifiers
d:\program files\microsoft visual studio\myprojects\chatserver\srvsocket.h(21) : error C2501: 'm_pDlg' : missing storage-class or type specifiers
SrvSocket.cpp
d:\program files\microsoft visual studio\myprojects\chatserver\chatserverdlg.h(46) : error C2143: syntax error : missing ';' before '*'
d:\program files\microsoft visual studio\myprojects\chatserver\chatserverdlg.h(46) : error C2501: 'CSrvSocket' : missing storage-class or type specifiers
d:\program files\microsoft visual studio\myprojects\chatserver\chatserverdlg.h(46) : error C2501: 'm_LiSocket' : missing storage-class or type specifiers
d:\program files\microsoft visual studio\myprojects\chatserver\chatserverdlg.h(47) : error C2143: syntax error : missing ';' before '*'
d:\program files\microsoft visual studio\myprojects\chatserver\chatserverdlg.h(47) : error C2501: 'CSrvSocket' : missing storage-class or type specifiers
d:\program files\microsoft visual studio\myprojects\chatserver\chatserverdlg.h(47) : error C2501: 'm_ConSocket' : missing storage-class or type specifiers
Generating Code...
解决方案 »
- 一个CListCtrl的问题,如何交换列
- 动态域名解析--编程实现 or 设置2000DNS?
- 如何把一个 CString 的文本放在剪贴板中?
- Generic是什么类类型呢?在什么情况下用到?
- 不通过msdev菜单,如何设置缺省的include 路径
- 在vc里有没有类似这样的结构?
- 如何CMainFrame中调用CView 中的成员函数
- 小弟刚刚学C语言,现在书上有个题目不知道是什么意思?请各位高手指点!
- 我想创建一个窗口。但是老是编译不了。大家帮帮忙看看。我通过了就结贴
- 请帮个忙(急) 怎样拿到服务器的时间,,我没有分了,请帮个忙吧
- 急!!!!!怎么在vc 6.0添加CTabSheet类
- 极度鄙视VB版主daisy8675
class CSrvSocket
前面用class CChatServerDlg;前置声明,#include "ChatServerDlg.h"放到SrvSocket.cpp文件中。