Namespaces
Variants

std::forward_list<T,Allocator>:: push_front

From cppreference.net

void push_front ( const T & value ) ;
(1) (C++11以降)
(constexprはC++26以降)
void push_front ( T && value ) ;
(2) (C++11以降)
(constexprはC++26以降)

コンテナの先頭に value のコピーを追加します。

イテレータおよび参照は無効化されません。

目次

翻訳の説明: - 「Contents」を「目次」に翻訳しました - C++関連の専門用語(Parameters, Complexity, Exceptions, Example, See also)は原文のまま保持しました - HTMLタグ、属性、クラス名は一切変更していません - 数値や構造は完全に保持されています - プロフェッショナルな技術文書として適切な表現を使用しています

パラメータ

value - 先頭に追加する要素の値
型要件
-
以下の条件が満たされる場合、動作は未定義です:
1) T CopyInsertable でない場合 forward_list
2) T MoveInsertable でない場合 forward_list

計算量

定数。

例外

何らかの理由で例外がスローされた場合、これらの関数は何も効果を持ちません( strong exception safety guarantee )。

#include <forward_list>
#include <iomanip>
#include <iostream>
#include <string>
int main()
{
    std::forward_list<std::string> letters;
    letters.push_front("me"); // オーバーロード (1)
    std::string s{"send"};
    letters.push_front(std::move(s)); // オーバーロード (2)
    std::cout << "std::forward_list letters holds: ";
    for (auto&& e : letters)
        std::cout << std::quoted(e) << ' ';
    std::cout << "\nMoved-from string s holds: " << std::quoted(s) << '\n';
}

出力例:

std::forward_list letters holds: "send" "me"
Moved-from string s holds: ""

関連項目

先頭に要素をその場で構築する
(public member function)
先頭要素を削除する
(public member function)
引数から推論された型の std::front_insert_iterator を作成する
(function template)