一、set集合简介
Set是C++ Standard Library中的一种关联容器,它是一组按照特定顺序排列的值,其中每个元素只能出现一次。
看起来和数组很相似,但是set中的元素是按照键(key)自动排序的。set中的元素是唯一的,因此如果要将相同元素添加到set中,set会在添加时自动删除重复的元素。二、set遍历的方法
遍历set集合的方法大致有以下几种:
三、遍历set集合中的所有元素
set集合中的元素是按照特定顺序排列的,因此我们可以通过遍历整个集合来获取所有元素。
#include
#include
using namespace std;
int main()
{
set s = {1, 2, 3, 4, 5};
// 遍历整个 set
for (auto i : s)
{
cout << i << " ";
}
return 0;
}
以上代码中,我们使用for-each循环遍历整个set集合。
四、按照特定条件遍历set集合中的元素
除了可以遍历整个set集合,我们还可以使用特定条件来遍历set中的元素,例如我们可以遍历所有小于5的元素:
#include
#include
using namespace std;
int main()
{
set s = {1, 2, 3, 4, 5};
// 遍历 set 中小于5的元素
for (auto iter = s.begin(); iter != s.end() && *iter < 5; ++iter)
{
cout << *iter << " ";
}
return 0;
}
以上代码中,我们使用迭代器遍历set集合,通过判断当前遍历到的元素是否小于5来决定是否继续遍历。
五、使用auto关键字简化语句
针对以上的迭代器遍历和for-each循环,C++11提供了auto关键字,可以帮助我们简化代码。
#include
#include
using namespace std;
int main()
{
set s = {1, 2, 3, 4, 5};
// 使用 auto 关键字简化语句
for (auto i : s)
{
cout << i << " ";
}
return 0;
}
以上代码中,我们使用了auto关键字来简化for-each循环。
六、总结
set是C++ Standard Library中的一种关联容器,它可以方便地存储一组有序元素,并且每个元素只会出现一次。
遍历set中的元素可以使用迭代器遍历、for-each循环遍历、STL算法库中的函数等方法,其中迭代器遍历是最常用的方法。
除了遍历整个set集合,我们还可以根据特定条件遍历set中的元素。
C++11提供了auto关键字,可以帮助我们简化语句。