Set根据特定排序准则,自动将元素排序。

Set不允许元素重复。

一些常规操作:

SetTest.cpp

#include <iostream>
#include <set>
#include <algorithm>
#include <iterator>
#include <functional>
#include "SetTest.h"using namespace std;void SetTest::operationDemo()
{// type of the collection:// - no duplicates// - elements are integral values// - descending orderset<int, greater<int>> coll1;// insert elements in random order using different member functionscoll1.insert({ 4, 3, 5, 1, 6, 2 });coll1.insert(5);// print all elementsfor (int elem : coll1) {cout << elem << ' ';}cout << endl;// insert 4 again and process return valueauto status = coll1.insert(4);if (status.second) {cout << "4 inserted as element "<< distance(coll1.begin(), status.first) + 1 << endl;}else {cout << "4 already exists" << endl;}// assign elements to another set with ascending orderset<int> coll2(coll1.cbegin(), coll1.cend());// print all elements of the copy using stream iteratorscopy(coll2.cbegin(), coll2.cend(), ostream_iterator<int>(cout, " "));cout << endl;// remove all elements up to element with value 3coll2.erase(coll2.begin(), coll2.find(3));// remove all elements with value 3int num;num = coll2.erase(3);cout << num << " element(s) removed" << endl;// print all elementscopy(coll2.cbegin(), coll2.cend(), ostream_iterator<int>(cout, " "));cout << endl;
}void SetTest::run()
{printStart("operationDemo()");operationDemo();printEnd("operationDemo()");
}

运行结果:

---------------- operationDemo(): Run Start ----------------
6 5 4 3 2 1
4 already exists
1 2 3 4 5 6
1 element(s) removed
4 5 6
---------------- operationDemo(): Run End ----------------

STL - 容器 - Set相关推荐

  1. C++ 笔记(19)— 标准模板库(STL容器、STL迭代器、STL算法、STL容器特点、STL字符串类)

    C++ 标准库可以分为两部分: 标准函数库: 这个库是由通用的.独立的.不属于任何类的函数组成的.函数库继承自 C 语言. 面向对象类库: 这个库是类及其相关函数的集合. C++ 标准库包含了所有的 ...

  2. C++拾趣——STL容器的插入、删除、遍历和查找操作性能对比(Windows VirtualStudio)——遍历和删除

    相关环境和说明在<C++拾趣--STL容器的插入.删除.遍历和查找操作性能对比(Windows VirtualStudio)--插入>已给出.本文将分析各个容器中遍历和查找的性能.(转载请 ...

  3. C++拾趣——STL容器的插入、删除、遍历和查找操作性能对比(Windows VirtualStudio)——删除

    相关环境和说明在<C++拾趣--STL容器的插入.删除.遍历和查找操作性能对比(Windows VirtualStudio)--插入>已给出.本文将分析从头部.中间和尾部对各个容器进行删除 ...

  4. C++拾趣——STL容器的插入、删除、遍历和查找操作性能对比(ubuntu g++)——遍历和查找

    相关环境和说明在<C++拾趣--STL容器的插入.删除.遍历和查找操作性能对比(ubuntu g++)--插入>已给出.本文将分析各个容器中遍历和查找的性能.(转载请指明出于breakso ...

  5. C++拾趣——STL容器的插入、删除、遍历和查找操作性能对比(ubuntu g++)——删除

    相关环境和说明在<C++拾趣--STL容器的插入.删除.遍历和查找操作性能对比(ubuntu g++)--插入>已给出.本文将分析从头部.中间和尾部对各个容器进行删除的性能.(转载请指明出 ...

  6. STL容器存储的内容动态分配情况下的内存管理

    主要分两种情况:存储的内容是指针:存储的内容是实际对象. 看以下两段代码, typedef pair<VirObjTYPE, std::list<CheckID>*> VirO ...

  7. STL容器是否是线程安全的

    转载http://blog.csdn.net/zdl1016/article/details/5941330 STL的线程安全. 说一些关于stl容器的线程安全相关的话题. 一般说来,stl对于多线程 ...

  8. gdb 查看 stl容器 zz

    将下面文件作为 ~/.gdbinit的内容, 或者在已有的~/.gdbinit中source下面的文件, 然后可以以下列方式查看stl容器的数据:  容器类型 GDB 命令 std::vector&l ...

  9. 标准非STL容器 : bitset

    1. 概念 什么是"标准非STL容器"?标准非STL容器是指"可以认为它们是容器,但是他们并不满足STL容器的所有要求".前文提到的容器适配器stack.que ...

  10. c++ stl容器vector删除(erase),遍历等基本用法介绍及头文件

    Vectors 包含着一系列连续存储的元素,其行为和数组类似.访问Vector中的任意元素或从末尾添加元素都可以在常量级时间复杂度内完成,而查找特定值的元素所处的位置或是在Vector中插入元素则是线 ...

最新文章

  1. 第三百一十九节,Django框架,文件上传
  2. jQuery调用WebService返回JSON数据
  3. HYSBZ(BZOJ) 4300 绝世好题(位运算,递推)
  4. [机器学习]关联挖掘算法Apriori和FP-Growth以及基于Spark 实例
  5. 研磨设计模式——桥接模式
  6. devops之 --- git可视化工具sourcetree
  7. 看逐浪CMS技术小哥做SVG动画(附使用Bodymovin和Lottie将Adobe After Effects(AE)程式转为 HTML5/Android/iOS原生的动画全过程-即AE转svg\c
  8. 机器学习如何帮助Caesars大涨邮件绩效
  9. 如何查看自己windows电脑的IP地址
  10. python xgboost建模过程_机器学习——XGBoost大杀器,XGBoost模型原理,XGBoost参数含义...
  11. 【第三方互联】14、Github授权第三方登录
  12. 基于raft共识搭建的Fabric1.4网络环境
  13. 如何通过域名访问服务器文件,如何通过域名访问云服务器
  14. NDIS Filter Drivers指南
  15. web 页面的提交方式
  16. 一个显示器分屏显示两个画面_测了两个爆款游戏显示器,结果我发现他们都有坑...
  17. GBase 8a 数据分布式存储
  18. 全志JAVA_全志R11处理器参数详细说明
  19. c语言既适合编写也适合编写应用软件,清华大学出版社-图书前言
  20. (JQuery学习笔记)我对jQuery选择器的总结

热门文章

  1. div+css背景渐变色代码示例
  2. python安装psycopg2
  3. linux dhclient 与 service network restart
  4. Android内存泄漏就这样产生了
  5. Java原子操作类,你知道多少?
  6. Java的新项目学成在线笔记-day7(二)
  7. MyBatis 实践 -配置
  8. log4j配置和使用
  9. 我们也可以从学习中获得快乐 ------稻盛和夫
  10. 3个CCIE对一个工程师的面试题(远去之路无比艰辛啊!)