定义一个结构:
typedef struct
{
CString a;
CString b;
CString c;
}Wab;然后声名一个listCList<Wab> my;现在通过Add插入一些元素。然后要点一个按纽,在文本框控件内显示所有元素。原来在VC6里用字符串链接:如CString All,Temp;Temp=a+" "+b+" "+c;
All=All+Temp+"\t\n";这样来显示所有的。
现在在2005里不能加入" "和"\r\n",加入就编译出错。还有,MFC里的迭代器该怎么用。就是要显示所有list里的内容。

解决方案 »

  1.   

    // Define myList.
    CList<CString,CString&> myList;// Add three elements to the list.
    myList.AddHead(CString("XYZ"));               //STL的插入是push_front,功能一样
    myList.AddHead(CString("ABC"));
    myList.AddHead(CString("123"));// Find a specific element.
    POSITION pos = myList.Find(CString("XYZ"));   //通过Find来查找你要的东西的位置
    ASSERT(CString("XYZ") == myList.GetAt(pos));  //通过GetAt来得到给定位置的元素值
      

  2.   

    建议不使用CList,因为这个类在很早以前,就不再被更新了。网上有很多文章都说明了此类的BUG。标准C++中的list完全可以满足你的要求,而且,功能更加强大,也更稳定。
      

  3.   

    我说嘛,怎么不能使用原来的list原来没有加名字空间呀。。