set

#include
using namespace std;
#include
#include
//set不可重复,multiset可重复,都自动排序 

void printSet(set&s)
{
	for(set::iterator it=s.begin();it!=s.end();it++)
	{
		cout<<*it<<" ";
	}
	cout< s1;
	//插入数据,只有insert方式
	s1.insert(10); 
	s1.insert(20); 
	s1.insert(40);
	s1.insert(30); 

	printSet(s1);
	//拷贝构造
	sets2(s1);
	printSet(s2);
	
	//赋值
	sets3;
	s3=s2;
	printSet(s3);
}
//大小和交换 
void test02()
{
	set s1;
	s1.insert(10); 
	s1.insert(20); 
	s1.insert(40);
	s1.insert(30);
	if(s1.empty())
	{
		cout<<"null"< s1;
	s1.insert(10); 
	s1.insert(20); 
	s1.insert(40);
	s1.insert(30);
	
	set s2;
	s2.insert(100); 
	s2.insert(200); 
	s2.insert(400);
	s2.insert(300);
	
	s1.swap(s2);
	printSet(s1);
	printSet(s2);
}
//插入与删除
void test04()
{
	set s1;
	s1.insert(30);
	s1.insert(10); 
	s1.insert(20); 
	s1.insert(40);
	//删除 
	s1.erase(s1.begin());
	printSet(s1);
	
	//删除重载版本 
	s1.erase(30);
	printSet(s1);
	//清空 
	//s1.erase(s1.begin(),s1.end());
	s1.clear();
	printSet(s1);
} 
void test05()
{
	set s1;
	s1.insert(30);
	s1.insert(10); 
	s1.insert(20); 
	s1.insert(40);
	
	set::iterator pos=s1.find(30);
	if(pos!=s1.end())
	{
		cout<<"有"< s1;
	s1.insert(30);
	s1.insert(10); 
	s1.insert(20); 
	s1.insert(40);
	
	int num=s1.count(30);
	cout< s;
	pair::iterator,bool> ret=s.insert(30);
	if(ret.second)
	{
		cout<<"第一次插入成功"<ms;
	ms.insert(10); 
	ms.insert(10);
	for(multiset::iterator it=ms.begin();it!=ms.end();it++)
	{
		cout<<*it<<" ";
	}
	cout<v2;
		}
};
void test08()
{
	sets1;
	s1.insert(20); 
	s1.insert(10); 
	s1.insert(30); 
	printSet(s1);//小到大
	
	sets2;
	s2.insert(20); 
	s2.insert(10); 
	s2.insert(30); 
	
	for(set::iterator it=s2.begin();it!=s2.end();it++)
	{
		cout<<*it<<" ";
	}//降序 
	cout<m_Name=name;
			this->m_Age=age;
		}
		string m_Name;
		int m_Age;
};
class comparePerson
{
	public:
		bool operator()(const Person&p1,const Person&p2)
		{
			return p1.m_Age>p2.m_Age;
		}
};
void test09()
{
	sets;
	Person p1("Mike",22);
	Person p2("Tom",20);
	Person p3("Jack",30);
	s.insert(p1); 
	s.insert(p2); 
	s.insert(p3); 
	for(set::iterator it=s.begin();it!=s.end();it++)
	{
		cout<<"name:"<m_Name<<"age:"<m_Age<

 

你可能感兴趣的:(C++,STL)