目录

set::emplace

描述 (Description)

它在集合中插入一个新元素。

声明 (Declaration)

以下是std :: set :: emplace在各种C ++版本中的工作方式。

C++98

template <class... Args>
  pair<iterator,bool> emplace (Args&&... args);

C++11

template <class... Args>
  pair<iterator,bool> emplace (Args&&... args);

返回值

它将一对迭代器返回给新插入的元素,值为true。

异常 (Exceptions)

如果抛出异常,则容器中没有更改。

时间复杂

取决于容器的大小。

例子 (Example)

以下示例显示了std :: set ::\templace的用法。

#include <iostream>
#include <set>
#include <string>
int main () {
   std::set<std::string> myset;
   myset.emplace("foo");
   myset.emplace("bar");
   auto ret = myset.emplace("bar");
   if (!ret.second) std::cout << "bar already exists in myset\n";
   return 0;
}

上述程序将正确编译和执行。

bar already exists in myset
↑回到顶部↑
WIKI教程 @2018