现在的位置: 首页 > 综合 > 正文

C++ STL Set使用

2018年02月06日 ⁄ 综合 ⁄ 共 850字 ⁄ 字号 评论关闭

最简单的用法

#include<iostream>
#include<set>
#include<string>
using namespace std;
int main(){
	set<string>strset;
	set<string>::iterator it;
	strset.insert("cantaloupes");
	strset.insert("apple");
	strset.insert("orange");
	strset.insert("banana");
	strset.insert("grapes");
	strset.insert("grapes"); 
	for(it=strset.begin();it!=strset.end();it++){
  		cout<<*it<<" ";
  	}
	cout<<endl;
	return 0;
}

结构体的比较

#include<iostream>
#include<cstring>
#include<set>
using namespace std;
struct Student{
  int id;
  char name[20];
}stu1,stu2,stu3;

struct setCmp {  
 bool operator()(Student a,Student b) {  
  return a.id>b.id;  
 }  
}; 

int main(){
	set<Student,setCmp>mys;
  	set<Student>::iterator it;
	stu1.id=1008;
	strcpy(stu1.name,"zhangsan");
	mys.insert(stu1);
	
  	stu2.id=1001;
	strcpy(stu2.name,"lisi");
	mys.insert(stu2);
	
	stu3.id=1005;
	strcpy(stu3.name,"wangwu");
  	mys.insert(stu3);
  	
	for(it=mys.begin();it!=mys.end();++it){
  		cout<<it->id<<" "<<it->name<<endl;
  	}
  	return 0;
}

 


抱歉!评论已关闭.