本帖最后由 roystd 于 2011-07-28 09:24:46 编辑

解决方案 »

  1.   

    m_list是list<A>,成员是A的实体。
    而m_list.push_back(a);
    这里a是A的指针,应该
    1、改成m_list.push_back(*a);
    或者
    2、list<*A> m_list;
      

  2.   

    或者
    2、list<A*> m_list;
      

  3.   

    谢谢楼上两位。我也觉得非常奇怪。昨天搞了一晚上,也没搞出来。
    不知道哪里还有可能错误的地方。当我在m_list.push_back(a) 后,内存里是不是就为m_list分配空间了?另外,这个函数是我在A中回调的。void A::OnReceive(int nErrorCode) 
    {
    if(nErrorCode==0)
    {
    ((D*)m_pApp)->OnReceive(); 
    } CAsyncSocket::OnReceive(nErrorCode);
    }
      

  4.   


    谢谢buyong,笔误,我就是这么定义的. list<A*> m_list;