當前位置: 首頁>>代碼示例 >>用法及示例精選 >>正文


C++ set emplace用法及代碼示例



描述

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

聲明

以下是 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 值。

異常

如果拋出異常,則容器中沒有變化。

時間複雜度

取決於容器大小。

示例

以下示例顯示了 std::set::emplace 的用法。

#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

相關用法


注:本文由純淨天空篩選整理自 C++ Set Library - emplace Function。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。