名前空間
変種
操作

std::insert_iterator<Container>::operator=

From cppreference.com
 
 
イテレータライブラリ
イテレータのコンセプト
イテレータのプリミティブ
アルゴリズムのコンセプトとユーティリティ
間接呼び出し可能コンセプト
共通アルゴリズム要件
(C++20)
(C++20)
(C++20)
ユーティリティ
(C++20)
イテレータアダプタ
Rangeアクセス
(C++11)(C++14)
(C++14)(C++14)  
(C++11)(C++14)
(C++14)(C++14)  
(C++17)(C++20)
(C++17)
(C++17)
 
 
(1)
insert_iterator<Container>&
    operator=( typename Container::const_reference value );
(C++11まで)
insert_iterator<Container>&
    operator=( const typename Container::value_type& value );
(C++11以降)
(C++20まで)
constexpr insert_iterator<Container>&
    operator=( const typename Container::value_type& value );
(C++20以降)
(2)
insert_iterator<Container>&
    operator=( typename Container::value_type&& value );
(C++11以降)
(C++20まで)
constexpr insert_iterator<Container>&
    operator=( typename Container::value_type&& value );
(C++20以降)

指定された値valueをコンテナに挿入します。

1) iter = container->insert(iter, value); ++iter; の結果になります。
2) iter = container->insert(iter, std::move(value)); ++iter; の結果になります。

目次

[編集] パラメータ

value - 挿入する値

[編集] 戻り値

*this

注釈

この関数は、連想コンテナ(std::set::insert など)のヒント付き挿入と、シーケンシャルコンテナ(std::vector::insert など)の位置指定挿入とのシグネチャの互換性を利用しています。

[編集]

#include <deque>
#include <iostream>
#include <iterator>
 
int main()
{
    std::deque<int> q;
    std::insert_iterator<std::deque<int>> it(q, q.begin());
 
    for (int i = 0; i < 10; ++i)
        it = i; // inserts i
 
    for (auto& elem : q)
        std::cout << elem << ' ';
    std::cout << '\n';
}

出力

0 1 2 3 4 5 6 7 8 9
English 日本語 中文(简体) 中文(繁體)