#include <iostream>
#include <set>
int main() {
// 创建一个整数集合
std::set<int> mySet = {5, 3, 8, 1, 4};
// 使用范围for循环遍历集合
std::cout << "Using range-based for loop:" << std::endl;
for (const int& elem : mySet) {
std::cout << elem << " ";
}
std::cout << std::endl;
// 使用迭代器遍历集合
std::cout << "Using iterator:" << std::endl;
for (std::set<int>::iterator it = mySet.begin(); it != mySet.end(); ++it) {
std::cout << *it << " ";
}
std::cout << std::endl;
// 使用C++11的auto关键字简化代码
std::cout << "Using auto keyword:" << std::endl;
for (auto it = mySet.begin(); it != mySet.end(); ++it) {
std::cout << *it << " ";
}
std::cout << std::endl;
return 0;
}
创建集合:
std::set<int> mySet = {5, 3, 8, 1, 4};
创建了一个包含整数的集合。std::set
是 C++ 标准库中的关联容器,它会自动对插入的元素进行排序,并且不允许重复元素。范围for循环遍历:
for (const int& elem : mySet)
使用了 C++11 引入的范围for循环来遍历集合中的每个元素。这里的 const int&
表示我们以常量引用的方式访问元素,避免不必要的复制。使用迭代器遍历:
for (std::set<int>::iterator it = mySet.begin(); it != mySet.end(); ++it)
使用迭代器从集合的起始位置遍历到结束位置。begin()
返回指向第一个元素的迭代器,end()
返回指向最后一个元素之后的位置的迭代器。使用 auto
关键字简化代码:
for (auto it = mySet.begin(); it != mySet.end(); ++it)
使用了 C++11 的 auto
关键字,让编译器自动推导迭代器的类型,使代码更加简洁。以上代码展示了三种不同的遍历 std::set
的方法,你可以根据自己的需求选择合适的方式。
上一篇:c++递归函数
下一篇:c++vector用法
Laravel PHP 深圳智简公司。版权所有©2023-2043 LaravelPHP 粤ICP备2021048745号-3
Laravel 中文站