ベクトルは、動的配列として機能するデータのシーケンスを格納するための C++ の便利なコンテナ クラスです。ベクター オブジェクトのサイズは、実行時にオブジェクト内の要素を追加または削除することによって増減できます。 insert() 関数は、要素の位置を指定することで、ベクター オブジェクトの特定の要素の前に 1 つ以上の新しい要素を追加するために使用されます。これにより、ベクター オブジェクトのサイズが動的に増加します。この関数のさまざまな構文と使用法については、このチュートリアルで説明されています。
構文:
ベクターの insert() 関数は、さまざまな目的に応じてさまざまな方法で使用できます。この関数の 3 つの異なる構文を以下に示します。
反復子の挿入 ( const_iterator の位置、 定数 値の種類 & 価値 ) ;
上記の insert() 関数は、position 引数で指定されたベクトル要素の位置の前に value 引数の値を挿入するために使用されます。新しく挿入されたベクトルの要素を指す反復子を返します。
反復子の挿入 ( イテレータの位置、size_type n、 定数 値の種類 & 価値 ) ;
上記の insert() 関数は、前述の insert() 関数と同様に機能しますが、同じ値をベクトル オブジェクトに複数回挿入します。
反復子の挿入 ( const_iterator の位置、InputIterator が最初、InputIterator が最後 ) ;
上記の insert() 関数は、position 引数で指定されたベクトル要素の位置の前に要素の範囲を挿入します。前の 2 つの insert() 関数と同様に、ベクトルの新しく挿入された要素を指す反復子を返します。
前提条件:
このチュートリアルの例を確認する前に、g++ コンパイラがシステムにインストールされているかどうかを確認する必要があります。 Visual Studio Code を使用している場合は、C++ ソース コードをコンパイルして実行可能コードを作成するために必要な拡張機能をインストールします。ここでは、Visual Studio Code アプリケーションを使用して C++ コードをコンパイルおよび実行しています。要素をベクトルに挿入するための insert() 関数のさまざまな使用法を以下に示します。
例-1: 単一要素の挿入
次のコードを含む C++ ファイルを作成し、insert() 関数を使用して単一の要素を挿入します。 5 つの浮動小数点数のベクトルがコード内で宣言されています。最初の insert() 関数は、begin() 関数を使用してベクトルの先頭に数値を挿入するために使用されています。 2 番目の insert() 関数は、反復変数を使用してベクトルの先頭に数値を挿入するために使用されています。 3 番目の insert() 関数は、ベクトルの 4 番目の位置に数値を挿入する必要があります。
//必要なライブラリを含める
#include
#include <ベクター>
使用して 名前空間 標準 ;
// ベクトルを表示する
空所 画面 ( ベクター < 浮く > 数字 )
{
//ループを使用してベクトルの値を出力します
のために ( 自動 彼 = 数字。 始める ( ) ; 彼 ! = 数字。 終わり ( ) ; 彼 ++ )
コート << * 彼 << 「」 ;
// 新しい行を追加
コート << 」 \n 」 ;
}
整数 主要 ( )
{
// ベクトルを初期化する
ベクター < 浮く > 価格 = { 78.56 、 34.07 、 23 、 4.5 、 61.08 、 29.3 } ;
コート << '元のベクトル: ' ;
画面 ( 価格 ) ;
// begin() を使用して先頭に数字を挿入します
自動 イテレータ = 価格。 入れる ( 価格。 始める ( ) 、 42.67 ) ;
コート << '最初の挿入後のベクトル:' ;
画面 ( 価格 ) ;
// イテレータを使用して先頭に数値を挿入します
価格。 入れる ( イテレータ、 30.76 ) ;
コート << '2 番目の挿入後のベクトル:' ;
画面 ( 価格 ) ;
//整数変数を初期化する
整数 位置 = 3 ;
// 特定の位置に数字を挿入します
イテレータ = 価格。 入れる ( 価格。 始める ( ) + 位置、 52.56 ) ;
コート << '3 番目の挿入後のベクトル:' ;
画面 ( 価格 ) ;
戻る 0 ;
}
出力:
上記のコードを実行すると、次の出力が表示されます。ベクトルの値は出力に 4 回表示されています。
例-2: 単一要素を複数回挿入する
次のコードを含む C++ ファイルを作成し、3 つのパラメーターを指定した insert() 関数を使用してベクターに同じ要素を複数回挿入します。 8 つの整数のベクトルがコード内で宣言されています。コードの insert() 関数を実行した後、数値 50 がベクトルの末尾に 5 回挿入されます。ここでは、end() 関数を使用してベクトルの末尾に要素を挿入しています。
//必要なライブラリを含める#include
#include<ベクター>
使用して 名前空間 標準 ;
// ベクトルを表示する
空所 画面 ( ベクター < 整数 > 数字 )
{
//ループを使用してベクトルの値を出力します
のために ( 自動 彼 = 数字。 始める ( ) ; 彼 ! = 数字。 終わり ( ) ; 彼 ++ )
コート << * 彼 << 「」 ;
// 新しい行を追加
コート << 」 \n 」 ;
}
整数 主要 ( )
{
// ベクトルを初期化する
ベクター < 整数 > intArray { 7 、 5 、 12 、 4 、 4.5 、 3 、 64 、 10 } ;
コート << '元のベクトル:' ;
画面 ( intArray ) ;
// ベクトルの末尾に同じ数値を複数回挿入します
intArray。 入れる ( intArray。 終わり ( ) 、 5 、 50 ) ;
コート << '同じ数字を5回挿入した後のベクトル:' ;
画面 ( intArray ) ;
コート << 」 \n 」 ;
戻る 0 ;
}
出力:
上記のコードを実行すると、次の出力が表示されます。ベクトルの値は出力に 2 回表示されます。
例-3: 要素の範囲を挿入する
次のコードを含む C++ ファイルを作成して、ベクトルのすべての要素を別のベクトルの末尾に挿入します。ここで、insert() 関数には 3 つのパラメーターが含まれています。挿入位置は第一パラメータで設定されています。 2 番目のベクトルの開始反復子と終了反復子は、insert() 関数の 2 番目と 3 番目の引数に設定されています。
//必要なライブラリを含める#include
#include<ベクター>
使用して 名前空間 標準 ;
//関数プロトタイプを定義する
空所 画面 ( ベクター < 弦 > リスト ) ;
整数 主要 ( )
{
//最初の文字列ベクトルを宣言します
ベクター < 弦 > シート1 { 「html」 、 「CSS」 、 「ジャバスクリプト」 、 「ブートストラップ」 } ;
// 2 番目の文字列ベクトルを宣言します
ベクター < 弦 > リスト2 { 「php」 、 「ジャワ」 、 「パイソン」 、 「バッシュ」 、 「パール」 } ;
コート << 'リスト 1 の値:' ;
画面 ( シート1 ) ;
コート << 'list2 の値:' ;
画面 ( リスト2 ) ;
// list2 の値を list1 の先頭に挿入します
シート1。 入れる ( シート1。 始める ( ) リスト2. 始める ( ) リスト2. 終わり ( ) ) ;
コート << 'list2 を挿入した後の list1 の値:' ;
画面 ( シート1 ) ;
戻る 0 ;
}
// ベクトルを表示する
空所 画面 ( ベクター < 弦 > リスト )
{
//ループを使用してベクトルの値を出力します
のために ( 自動 彼 = リスト。 始める ( ) ; 彼 ! = リスト。 終わり ( ) ; 彼 ++ )
コート << * 彼 << 「」 ;
// 新しい行を追加
コート << 」 \n 」 ;
}
出力:
上記のコードを実行すると、次の出力が表示されます。ベクトルの値は出力に 3 回表示されています。
結論:
このチュートリアルでは、insert() 関数を使用してベクトルの任意の位置に 1 つ以上の要素を挿入する方法を、複数の例を使用して示しました。 C++ プログラマーがこのチュートリアルを読んだ後、ベクターの insert() 関数を適切に使用できることを願っています。