MFC和STL的几个小例

来源:互联网 发布:微信和facebook知乎 编辑:程序博客网 时间:2024/05/06 23:26

CList中RemoveAt的使用

#include <iostream>#include <afxtempl.h>using namespace std;int main(){POSITION tmpPos;CList<int,int> m_clist;for (int i = 0;i <= 10;i++){m_clist.AddTail(i);}POSITION pos = m_clist.GetHeadPosition();while (pos){int nCur = m_clist.GetAt(pos);if (nCur % 2)//删除偶数{tmpPos = pos;m_clist.GetNext(pos);m_clist.RemoveAt(tmpPos);}else{m_clist.GetNext(pos);}}pos = m_clist.GetHeadPosition();while (pos){cout<<m_clist.GetAt(pos);m_clist.GetNext(pos);}system("pause");}

使用STL中的set,根据类中某成员,对类进行排序

#include <iostream>#include <string>#include <set>using namespace std;class CID{public:int num;bool operator<(const CID& ID)const   //给出operator<()的定义,以便在插入容器时排序,注意一定要有两个Const{return num <= ID.num; //从小到大排序}};int main(){CID ID[3]={{3},{2},{4}};set<CID> st;st.insert(ID[0]);st.insert(ID[1]);st.insert(ID[2]);set<CID>::iterator it=st.begin();for (;it!=st.end();it++){cout<<(*it).num<<" "<<endl;}system("pause");return 0;}



 

原创粉丝点击