可能写这个程序的时候还没有STL

解决方案 »

  1.   

    是这样的吗?那用STL该怎么定义啊?
    我怎么老是报错用std::list<CClientSocket *>connectList
      

  2.   

    啥错误啊?
    是不是没引入<list>?
    保存套接字为了实现用户直接点点对点
      

  3.   

    现在没错误了,可是我有个疑问
    我定义了个tagHeader.h文件,代码如下:
    #ifndef _H_TAGHEADER_H
    #define _H_TAGHEADER_H#include "ClientSocket.h"
    #include <list>
    typedef struct tagHeader
    {
       BYTE command;
       DWORD datalen;
    }Header,*pHeader;#define  COMMAND_LOGIN 1
    #define  COMMAND_REG   2typedef std::list<CClientSocket> ListConnect;#endif
    CServerSocket类的头文件如下:#ifndef H_SERVERSOCKET_H
    #define H_SERVERSOCKET_H#include "tagHeader.h"class CServerSocket :public CSocket
    {
    public:
    CServerSocket(void);
    ~CServerSocket(void);

    /*typedef std::list<CClientSocket> ListConnect;*/
    // 重写
    public:
     virtual void OnAccept(int nErrorCode);public:
    ListConnect m_listconnect;
    };#endifCServerSocket类的cpp如下:#include "StdAfx.h"
    #include "ServerSocket.h"
    #include "ClientSocket.h"CServerSocket::CServerSocket(void)
    {
    }CServerSocket::~CServerSocket(void)
    {
    }void CServerSocket::OnAccept(int nErrorCode)
    {
       CClientSocket *clientsocket;
       clientsocket=new CClientSocket;
       this->Accept(*clientsocket);
       m_listconnect.push_back(clientsocket);
       CSocket::OnAccept(nErrorCode);
    }我的m_listconnect怎么给CClientSocket使用啊,我想过把m_listconnect传给CClientSocket,可是我的疑问是,当Accept(*clientsocket)多个clientsocket后,每个clientsocket都有一个自己的成员变量m_listconnect,这些m_listconnect是相等的吗?
      

  4.   


    在tagHeader.h中定义typedef std::list<CClientSocket> ListConnect;出问题了
    我在CClientSocke中用ListConnect报错,CClientSocke头文件如下:#pragma once#ifndef _H_CLIENTSOCKET_H
    #define _H_CLIENTSOCKET_H
    #include "tagHeader.h"class CClientSocket :public CSocket
    {
    public:
    CClientSocket();
    ~CClientSocket(void);
    public:
    ListConnect m_listconnect;//这里会报错
    };
    #endif编译后说CClientSocket的ListConnect m_listconnect这句报错
    怎么解决?在哪定义typedef std::list<CClientSocket> ListConnect比较好?
      

  5.   

    还有就是我想让每个Accept(*clientsocket)里的clientsocket的m_listconnect相等的话,应该怎么做?急啊,纠结在这一块半天了