typedef struct{            //连接结构
    char SourceIP[20];     //存放客户端的IP地址
int nSock;             //client port
CServiceSocket *pSocket;   //CServiceSocket 继承于CSocket
}CONN;CPtrList m_connectionList;  //用户连接队列 POSITION pos = m_connectionList.GetHeadPosition();
 if(pos)
  {
    CServiceSocket*pSocket = (CServiceSocket*)m_connectionList.GetHead();
    for(int i = 0; i < m_connectionList.GetCount(); i++)
    {
   CServiceSocket*pSocket = (CServiceSocket*)m_connectionList.GetNext(pos);
     CONN*pconn = (CONN*)m_connectionList.GetNext(pos);
                    
  ........

    }
 }请问我怎样使用CONN结构中pSocket 成员对象?

解决方案 »

  1.   

    不好意思!上面些错了。
    CServiceSocket*pSocket = (CServiceSocket*)m_connectionList.GetNext(pos);应该没有的
    CONN*pconn = (CONN*)m_connectionList.GetNext(pos);
    pconn->pSocket->Send(...);
    这样可以吗
                        
      

  2.   

    只要你的socket被初始化过了,应该没有问题
      

  3.   

    CPtrList中保存的内容在从CObject派生,你放的什么就把它转化为什么X* pXX;
    m_connectionList.AddTail(pXX);
    X* pX = (X*)m_connectionList.GetNext(pos);
      

  4.   

    CONN*pconn = (CONN*)m_connectionList.GetNext(pos);
    pconn->pSocket->Send(...);
    这样可以吗