std::queue<T,Container>::emplace - cppreference.com
提供: cppreference.com
<tbody> </tbody>
|
|
(C++11以上) (C++17未満) |
|
|
|
(C++17以上) | |
新しい要素をキューの終端にプッシュします。 要素はその場で構築されます。 つまり、コピーやムーブは行われません。 要素のコンストラクタはこの関数に与えられたものとまったく同じ引数で呼ばれます。
実質的に c.emplace_back(std::forward<Args>(args)...); を呼びます。
引数
| args | - | 要素のコンストラクタに転送される引数 |
戻り値
| (なし) | (C++17未満) |
上記の Container::emplace_back の呼び出しによって返された値または参照 (もしあれば)。 |
(C++17以上) |
計算量
Container::emplace_back の計算量と同等
欠陥報告
以下の動作変更欠陥報告は以前に発行された C++ 標準に遡って適用されました。
| DR | 適用先 | 発行時の動作 | 正しい動作 |
|---|---|---|---|
| LWG 2783 | C++17 | emplace returned reference, breaking compatibility with pre-C++17 containers
|
returns decltype(auto)
|