名前空間
変種
操作

std::vector::vector

提供: cppreference.com
< cpp‎ | container‎ | vector
 
 
 
std::vector
メンバ関数
Original:
Member functions
The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.
vector::vector
vector::~vector
vector::operator=
vector::assign
vector::get_allocator
要素アクセスの循環参照を解除するために使用されている
Original:
Element access
The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.
vector::at
vector::operator[]
vector::front
vector::back
vector::data(C++11)
イテレータ
Original:
Iterators
The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.
vector::begin
vector::cbegin

(C++11)
vector::end
vector::cend

(C++11)
vector::rbegin
vector::crbegin

(C++11)
vector::rend
vector::crend

(C++11)
容量
Original:
Capacity
The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.
vector::empty
vector::size
vector::max_size
vector::reserve
vector::capacity
vector::shrink_to_fit(C++11)
修飾子
Original:
Modifiers
The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.
vector::clear
vector::insert
vector::emplace(C++11)
vector::erase
vector::push_back
vector::emplace_back(C++11)
vector::pop_back
vector::resize
vector::swap
 
explicit vector( const Allocator& alloc = Allocator() );
(1)
explicit vector( size_type count,

                 const T& value = T(),
                 const Allocator& alloc = Allocator());
         vector( size_type count,
                 const T& value,

                 const Allocator& alloc = Allocator());
(2) (C++11以前)


(C++11およびそれ以降)
explicit vector( size_type count );
(3) (C++11およびそれ以降)
template< class InputIt >

vector( InputIt first, InputIt last,

        const Allocator& alloc = Allocator() );
(4)
vector( const vector& other );
(5)
vector( const vector& other, const Allocator& alloc );
(5) (C++11およびそれ以降)
vector( vector&& other )
(6) (C++11およびそれ以降)
vector( vector&& other, const Allocator& alloc );
(6) (C++11およびそれ以降)
vector( std::initializer_list<T> init,
        const Allocator& alloc = Allocator() );
(7) (C++11およびそれ以降)

さまざまなデータソースから新しいコンテナを構築します.ユーザーが指定したアロケータallocを使用することもできます.

1) デフォルトコンストラクタです.空のコンテナを構築します.
2) count個の要素をもつコンテナを構築します.要素の値はvalueからコピーされます.
3) count個の要素をもつコンテナを構築します.それぞれの要素は値初期化(デフォルトコンストラクタによる初期化)されます.コピーは行われません.
4) レンジ[first, last)の内容でコンテナを構築します.
5) コピーコンストラクタです. otherの内容をコピーしてコンテナを構築します. allocが提供されていない場合、std::allocator_traits<allocator_type>::select_on_copy_construction(other)が呼ばれ、その返り値がアロケータとして使用されます.
6) ムーブコンストラクタです.ムーブセマンティクスを使用してotherの内容でコンテナを構築します. allocが指定されていない場合、アロケータはotherに属するアロケータからムーブコンストラクトしたものが使用されます.
7) 初期化子リストinitの内容でコンテナを構築します.

目次

[編集] パラメータ

alloc - このコンテナのすべてのメモリ割り当てに使用されるアロケータ
count - コンテナのサイズ
value - コンテナの要素の初期化に用いる値
first, last - 要素をコピーする範囲
other - コンテナの要素の初期化に用いる別のコンテナ
init - コンテナの要素の初期化に用いる初期化子リスト
型の要件
-
InputItInputIterator

の要求を満足しなければなりません。

[編集] 計算複雑性

1) 定数
2-3) countに比例
4) firstlastとの間の距離に比例
5) otherの大きさに比例
6) 定数. allocが指定され、かつalloc != other.get_allocator()の場合は線形.
7) initの大きさに比例

[編集]

#include <vector>
#include <string>
 
int main() 
{
    // c++11 initializer list syntax:
    std::vector<std::string> words1 {"the", "frogurt", "is", "also", "cursed"};
 
    // words2 == words1
    std::vector<std::string> words2(words1.begin(), words1.end());
 
    // words3 == words1
    std::vector<std::string> words3(words1);
 
    // words4 is {"Mo", "Mo", "Mo", "Mo", "Mo"}
    std::vector<std::string> words4(5, "Mo");
 
    return 0;
}


[編集] 参照

コンテナに値を割り当てます
Original:
assigns values to the container
The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.

(パブリックメンバ関数) [edit]
コンテナに値を割り当てます
Original:
assigns values to the container
The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.

(パブリックメンバ関数) [edit]