C++ STL入门教程 C++ STL入门教程(6) set(集合)如何使用
synapse7 人气:0想了解C++ STL入门教程(6) set(集合)怎样使用的相关内容吗,synapse7在本文为您仔细讲解C++ STL入门教程的相关知识和一些Code实例,欢迎阅读和指正,我们先划重点:C++,STL,下面大家一起来学习吧。
一、简介
集合(Set)是一种包含已排序对象的关联容器,不允许有重复元素。
二、完整程序代码
/*请务必运行以下程序后对照阅读*/ #include <set> #include <iostream> using namespace std; int main() { ///1. 初始化 set<int> num; set<int>::iterator iter; cout << num.max_size() << endl;///set容纳上限 cout << endl; ///2. 添加元素 for (int i = 0; i < 10; i++) num.insert(i); cout << num.size() << endl; cout << endl; ///3. 遍历 ///不同于map,set容器不提供下标操作符 for (iter = num.begin(); iter != num.end(); iter++) cout << *iter << " " ; cout << endl; cout << endl; ///4. 查询 iter = num.find(1); if (iter != num.end()) cout << *iter << endl; else cout << -1 << endl; iter = num.find(99); if (iter != num.end()) cout << *iter << endl; else cout << -1 << endl; cout << endl; ///5. 删除 iter = num.find(1); num.erase(iter); cout << num.size() << endl; for (iter = num.begin(); iter != num.end(); iter++) cout << *iter << " " ; cout << endl; cout << endl; ///6. 判空与清空 if (!num.empty()) num.clear(); }
三、补充
map容器是键-值对的集合,好比以人名为键的地址和电话号码。相反地,set容器只是单纯的键的集合。当我们想知道某位用户是否存在时,使用set容器是最合适的。
加载全部内容