C++ STL set详解

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了C++ STL set详解相关的知识,希望对你有一定的参考价值。

一.解释

  关于set,必须说明的是set关联式容器。 set作为一个容器也是用来存储同一数据类型的数据类型,并且能从一个数据集合中取出数据,在set中每个元素的值都唯一,而且系统能根据元素的值自动进行排序。

二.用法

  1.头文件

#include <set> 

 

  2.常用操作

set<int> s    定义一个set容器 类型为int型
s.begin()         返回指向第一个元素的迭代器
s.clear()          清除所有元素
s.count()         返回某个值元素的个数
s.empty()        如果集合为空,返回true
s.end()           返回指向最后一个元素之后的迭代器,不是最后一个元素
s.erase()          删除集合中的元素
s.find()           返回一个指向被查找到元素的迭代器,如果没找到则返回end()
s.insert()          在集合中插入元素
s.size()            集合中元素的数目
s.swap()          交换两个集合变量

三.例子:

#include <iostream>
#include <set>
using namespace std;
int main()
{
    int i;
    set<int> set1;
    for(i=0; i<10; ++i)
        set1.insert(i);
    set<int>::iterator it;
    for(it=set1.begin(); it!=set1.end(); it++)
        cout<<*it<<"\t";
    cout<<endl;
    set1.erase(5);
    if(set1.insert(3).second)//把3插入到set1中,插入成功则set1.insert(3).second返回1,否则返回0.
        cout<<"set insert success";
    else
        cout<<"set insert failed";
    cout<<endl;
    set<int>::iterator itr;
    for(itr=set1.begin(); itr!=set1.end(); itr++)
        cout<<*itr<<"\t";
    set1.clear();
    return 0;
}

 

 

以上是关于C++ STL set详解的主要内容,如果未能解决你的问题,请参考以下文章

[C++ STL] set使用详解

C++ STL set详解

[C++ STL] map使用详解

详解 C++ STL 六大组件,看完不懂打我...

详解 C++ STL 六大组件,看完不懂打我...

STL详解—— 用一棵红黑树同时封装出map和set