C++ STL set insert()方法详解 您所在的位置:网站首页 insert与inset C++ STL set insert()方法详解

C++ STL set insert()方法详解

2023-05-25 09:51| 来源: 网络整理| 查看: 265

首页 > STL > STL关联式容器 C++ STL set insert()方法详解   通过前面的学习,我们已经学会如何创建一个 set 容器。在此基础上,如果想向 set 容器中继续添加元素,可以借助 set 类模板提供的 insert() 方法。 为满足不同场景的需要,C++ 11 标准的 set 类模板中提供了多种不同语法格式的 insert() 成员方法,它们各自的功能和用法如下所示。 1) 只要给定目标元素的值,insert() 方法即可将该元素添加到 set 容器中,其语法格式如下:

//普通引用方式传参 pair insert (const value_type& val); //右值引用方式传参 pair insert (value_type&& val);

其中,val 表示要添加的新元素,该方法的返回值为 pair 类型。

以上 2 种格式的区别仅在于传递参数的方式不同,即第一种采用普通引用的方式传参,而第二种采用右值引用的方式传参。右值引用为 C++ 11 新添加的一种引用方式,可阅读《C++ 右值引用》一文做详细了解。

可以看到,以上 2 种语法格式的 insert() 方法,返回的都是 pair 类型的值,其包含 2 个数据,一个迭代器和一个 bool 值: 当向 set 容器添加元素成功时,该迭代器指向 set 容器新添加的元素,bool 类型的值为 true; 如果添加失败,即证明原 set 容器中已存有相同的元素,此时返回的迭代器就指向容器中相同的此元素,同时 bool 类型的值为 false。 举个例子: #include #include #include using namespace std; int main() { //创建并初始化set容器 std::set myset; //准备接受 insert() 的返回值 pair retpair; //采用普通引用传值方式 string str = "http://c.biancheng.net/stl/"; retpair = myset.insert(str); cout


【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有