C++ Unordered_set 库 - 插入


描述

它在 unordered_set 中插入新元素。

宣言

以下是 std::unordered_set::insert 的声明。

C++11

pair<iterator,bool> insert ( const value_type& val );

参数

  • args - 这些参数传递给构造函数。

  • val - 这些对象将被复制到(或移动为)新元素的值。

  • 提示- 它迭代到建议的位置,作为从哪里开始搜索正确插入点的提示

返回值

它的成员类型迭代器是前向迭代器类型。

例外情况

如果任何元素比较对象抛出异常,则抛出异常。

请注意,无效参数会导致未定义的行为。

时间复杂度

恒定时间。

例子

以下示例显示了 std::unordered_set::insert 的用法。

#include <iostream>
#include <string>
#include <array>
#include <unordered_set>

int main () {
   std::unordered_set<std::string> myset = {"sairam","krishna","mammahe"};
   std::array<std::string,2> myarray = {"ram","mammahe"};
   std::string mystring = "krishna";

   myset.insert (mystring);                        
   myset.insert (mystring);                 
   myset.insert (myarray.begin(), myarray.end()); 
   myset.insert ( {"sai","mammahe"} );          

   std::cout << "myset contains:";
   for (const std::string& x: myset) std::cout << " " << x;
   std::cout <<  std::endl;

   return 0;
}

让我们编译并运行上面的程序,这将产生以下结果 -

myset contains: sai mammahe sairam ram krishna
无序集.htm