杭州网站制作服务,网站百度地图提交,摄影app,wordpress做seo优化摘要#xff1a;std::set作为标准库的一个关联容器#xff0c;实现内部元素进行了排序#xff0c;使用这特性可以对一组元素进行插入排序。std::set最初的设计是完成数学中“集合”的概念#xff0c;它提供的接口也是如此。本文简单地介绍一下这一个标准库容器。 为了使用s… 摘要std::set作为标准库的一个关联容器实现内部元素进行了排序使用这特性可以对一组元素进行插入排序。std::set最初的设计是完成数学中“集合”的概念它提供的接口也是如此。本文简单地介绍一下这一个标准库容器。 为了使用std::set我只需要如下 #includeset //定义一个整型数据的集合 std::setint set; 如同所有的STL容器一样std::set的基本的使用是如此简单即使使用看起来很高级的功能也并不难STL是经过设计的调试可用的库。 下面我会展示一些简单的使用示例这些是示例非常简单首先介绍那个“排序”的用法 #includeset int array[5]{12, 34, 10, 98, 3}; const size_t array_sizesizeof(array)/sizeof(array[0]); std::setint set; for(size_t i0; iarray_size; i) { //把数据插入集合数据自动排序 set.insert(array[i]); } //此时已经排序了下面依次输出 std::setint::const_iterator bset.begin(); for(; b!set.end(); b) { std::cout *b \n; } 在一般意识中一个集合并没有太多的操作所有在STL中std::set也没有太多操作它的排序是自动的我们可以插入一个元素也可以删除一个元素也有迭代器。下面简单的示例包括std::set自身的多数的特性 #includeset int array[5]{12, 34, 10, 98, 3}; const size_t array_sizesizeof(array)/sizeof(array[0]); //一个新的定义容器的方法 std::setint set(array, arrayarray_size); //插入一个元素 set.insert(23); //移除一个元素 set.erase(10); //移除一个元素不在集合中的元素 //此时什么也不做n作为返回值将会是0 //指明没有元素移除 size_t nset.erase(11); //使用迭代器找到一个元素 std::setint::const_iterator resultset.find(98); std::setint other; //交换两个集合的内容 std::swap(set, other); //清楚所有的内容 other.clear(); std::set很简单正如多数STL工具一样但是却可以给我们许多新的感觉。祝大家学习愉快