logo

C++ でベクトルを初期化する (7 つの異なる方法)

を構築または初期化するさまざまな方法を次に示します。 C++ STL のベクトル

1. 値を 1 つずつプッシュして初期化します。



C++






// C++ program to create an empty> // vector and push values one> // by one.> #include> #include> using> namespace> std;> > int> main()> {> >// Create an empty vector> >vector<>int>>運ぶ>> > >vect.push_back(10);> >vect.push_back(20);> >vect.push_back(30);> > >for> (>int> x : vect)> >cout << x <<>' '>;> > >return> 0;> }>



>

>

出力

10 20 30>

2. サイズを指定し、すべての値を初期化します。

C++




日付文字列Java
// C++ program to create an empty> // vector and push values one> // by one.> #include> #include> using> namespace> std;> > int> main()> {> >int> n = 3;> > >// Create a vector of size n with> >// all values as 10.> >vector<>int>>vect(n, 10);>> > >for> (>int> x : vect)> >cout << x <<>' '>;> > >return> 0;> }>

>

>

出力

10 10 10>

3. 配列と同様に初期化します。

C++




// C++ program to initialize> // a vector like an array.> #include> #include> using> namespace> std;> > int> main()> {> >vector<>int>>バー { 10, 20, 30 };>> > >for> (>int> x : vect)> >cout << x <<>' '>;> > >return> 0;> }>

>

>

出力

10 20 30>

4. 配列からの初期化:

C++


モニターのサイズを決める方法



// C++ program to initialize> // a vector from an array.> #include> #include> using> namespace> std;> > int> main()> {> >int> arr[] = { 10, 20, 30 };> >int> n =>sizeof>(arr) />sizeof>(arr[0]);> > >vector<>int>>vect(arr, arr + n);>> > >for> (>int> x : vect)> >cout << x <<>' '>;> > >return> 0;> }>

>

>

出力

10 20 30>

5. 別のベクトルからの初期化:

C++




// C++ program to initialize a vector from> // another vector.> #include> #include> using> namespace> std;> > int> main()> {> >vector<>int>>vect1{ 10, 20, 30 };>> > >vector<>int>>vect2(vect1.begin(), vect1.end());>> > >for> (>int> x : vect2)> >cout << x <<>' '>;> > >return> 0;> }>

文字から文字列へのJava
>

>

出力

10 20 30>

6. すべての要素を特定の値で初期化します。

C++




// C++ Program to initialize vector using fill()> #include> #include> using> namespace> std;> > int> main()> {> >// creating array with size 10> >vector<>int>>vect1(10);>> > >// initializing using fill() function> >int> value = 5;> >fill(vect1.begin(), vect1.end(), value);> > >// printing vector> >for> (>int> x : vect1)> >cout << x <<>' '>;> > >return> 0;> }>

>

>

出力

5 5 5 5 5 5 5 5 5 5>

7 std::iota を使用して配列を連続番号で初期化する :

アルゴリズム二分探索

C++




// C++ program to initialize a> // vector with consecutive> // numbers> #include> #include> #include> using> namespace> std;> > int> main()> {> >// declaring a vector with size 5> >vector<>int>>もの(5);>> > >// initializing using iota()> >iota(vec.begin(), vec.end(), 1);> > >// printing the vector> >for> (>int> i = 0; i <5; i++) {> >cout << vec[i] <<>' '>;> >}> >return> 0;> }>

>

>

出力

1 2 3 4 5>

時間計算量: O(N)。N はベクトルのサイズです。

補助スペース: の上)。