最終更新日時(UTC):
が更新

履歴 編集

function template
<queue>

std::priority_queue::emplace(C++11)

template <class... Args>
void emplace(Args&&... args);

概要

要素型Tのコンストラクタ引数をとり、直接構築でpriority_queueに要素を追加する。

効果

c.emplace_back(forward<Args>(args)...);
push_heap(c.begin(), c.end(), comp);

戻り値

なし

#include <iostream>
#include <queue>
#include <string>
#include <utility>

int main ()
{
  std::priority_queue<std::pair<int, std::string>> que;

  que.emplace(3, "aaa");
  que.emplace(1, "bbb");
  que.emplace(4, "ccc");

  while (!que.empty()) {
    std::cout << que.top().first << ", " << que.top().second << std::endl;
    que.pop();
  }
}

出力

4, ccc
3, aaa
1, bbb

バージョン

言語

  • C++11

処理系

参照