STL set容器 入门

来源:互联网 发布:傲剑绿色版升级数据 编辑:程序博客网 时间:2024/06/06 14:26

1.头文件 : #include<set>

2.定义 : set<string>name;

3.存入 : name.insert(key);

4.输出 : 需要定义一个迭选器 方法如下

4.1 set<string>::iterator it;(定义it为迭选器)

4.2 for(it=name.begin();i!=name.end();ii++)

{

cout<<*it<<endl;

}

5.set容器默认从小到大排序 若需要自己定义的排序 需要进行重载

5.1 比较函数的重载

struct cmp{

bool operator()(string a,string b)    / /对"()"进行重载

{

return a>b;

}

}

6.下面函数包括输入学生姓名 对学生姓名进行字典序排序的功能

#include <stdio.h>#include<algorithm>#include<string>#include<set>using namespace std;struct cmp{bool operator()(string a,string b){return a>b;} };int main(int argc, char *argv[]){int n;set<string,cmp>name;set<string,cmp>::iterator it;while(scanf("%d",&n)!=EOF){int i;for(i=0;i<n;i++){string c;cin>>c;name.insert(c);}for(it=name.begin();it!=name.end();it++){cout<<*it<<endl;}}return 0;}


原创粉丝点击