std::vector
![]() |
このページは、Google 翻訳を使って英語版から機械翻訳されました。
翻訳には誤りや奇妙な言い回しがあるかもしれません。文章の上にポインタをおくと、元の文章が見れます。誤りを修正して翻訳を改善する手助けをしてください。翻訳についての説明は、ここをクリックしてください。 |
Defined in header <vector>
|
||
template< class T, |
||
std::vector
は動的なサイズの配列をカプセル化するシーケンスコンテナです.
要素は連続して格納されます。これはイテレータを介して要素にアクセスするだけでなく、要素を指す通常のポインタに対してオフセットを使用することで要素にアクセスできるを意味し、vectorの要素へのポインタを、配列の要素へのポインタを受け取る任意の関数に渡せることを意味します.
vectorの記憶域は必要に応じて自動的に拡張されます。vectorは通常、静的な配列よりも多めの領域を占有します。これは将来の拡張を扱えるように追加のメモリを割り当てるためです。ベクトルは、追加のメモリが枯渇している場合を除き、要素が挿入されるたびに再割り当てする必要はありません。割り当てられたメモリの総量はcapacity()
関数で照会できます。余分なメモリはshrink_to_fit()
関数を呼び出すことでシステムに戻すことができます.
再割り当ては通常、パフォーマンス上高価な操作です。要素数があらかじめわかっている場合reserve()
関数を使用することで、再割り当てを避けることができます.
ベクトル上の一般的な操作の複雑さ(効率)は以下の通りです:
- ランダムアクセス - 定数時間O(1)
- 末尾への要素の挿入または削除 - 償却定数時間O(1)
- 要素の挿入または削除 - ベクトルの末尾までの距離の線形時間 O(n)
std::vector
は Container
、AllocatorAwareContainer
、SequenceContainer
とReversibleContainer
の要件を満たします.
[編集] 特殊化
標準ライブラリには、型bool向けにメモリ効率を最適化した、std::vector
の特殊化を提供しています.
スペース効率に優れたダイナミックbitsetの Original: space-efficient dynamic bitset The text has been machine-translated via Google Translate. You can help to correct and verify the translation. Click here for instructions. (クラステンプレート) |
[編集] メンバータイプ
メンバー·タイプ
Original: Member type The text has been machine-translated via Google Translate. You can help to correct and verify the translation. Click here for instructions. |
Definition |
value_type
|
T
|
allocator_type
|
Allocator
|
size_type
|
符号なし整数型(通常size_t)
Original: Unsigned integral type (usually size_t) The text has been machine-translated via Google Translate. You can help to correct and verify the translation. Click here for instructions. |
difference_type
|
Signed integer type (usually ptrdiff_t) |
reference
|
Allocator::reference (C++11以前)value_type& (C++11およびそれ以降)
|
const_reference
|
Allocator::const_reference (C++11以前)const value_type& (C++11およびそれ以降)
|
pointer
|
Allocator::pointer (C++11以前)std::allocator_traits<Allocator>::pointer (C++11およびそれ以降) |
const_pointer
|
Allocator::const_pointer (C++11以前) std::allocator_traits<Allocator>::const_pointer (C++11およびそれ以降) |
iterator
|
RandomAccessIterator
|
const_iterator
|
一定のランダムアクセス反復子を返します
Original: Constant random access iterator The text has been machine-translated via Google Translate. You can help to correct and verify the translation. Click here for instructions. |
reverse_iterator
|
std::reverse_iterator<iterator> |
const_reverse_iterator
|
std::reverse_iterator<const_iterator> |
[編集] メンバ関数
vector を構築します Original: constructs the vector The text has been machine-translated via Google Translate. You can help to correct and verify the translation. Click here for instructions. (パブリックメンバ関数) | |
destructs the vector (パブリックメンバ関数) | |
コンテナに値を割り当てます 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. (パブリックメンバ関数) | |
コンテナに値を割り当てます 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. (パブリックメンバ関数) | |
関連したアロケータを返す Original: returns the associated allocator The text has been machine-translated via Google Translate. You can help to correct and verify the translation. Click here for instructions. (パブリックメンバ関数) | |
要素へのアクセス | |
指定された要素にアクセスします。境界チェックを行います。 (パブリックメンバ関数) | |
指定された要素にアクセスします Original: access specified element The text has been machine-translated via Google Translate. You can help to correct and verify the translation. Click here for instructions. (パブリックメンバ関数) | |
最初の要素にアクセスします Original: access the first element The text has been machine-translated via Google Translate. You can help to correct and verify the translation. Click here for instructions. (パブリックメンバ関数) | |
末尾の要素にアクセスします (パブリックメンバ関数) | |
(C++11) |
基になる配列へのアクセスを指示する Original: direct access to the underlying array The text has been machine-translated via Google Translate. You can help to correct and verify the translation. Click here for instructions. (パブリックメンバ関数) |
Original: Iterators The text has been machine-translated via Google Translate. You can help to correct and verify the translation. Click here for instructions. | |
先頭を指すイテレータを返します (パブリックメンバ関数) | |
末尾を指すイテレータを返す Original: returns an iterator to the end The text has been machine-translated via Google Translate. You can help to correct and verify the translation. Click here for instructions. (パブリックメンバ関数) | |
逆イテレータの先頭を返します (パブリックメンバ関数) | |
逆イテレータの末尾を返します (パブリックメンバ関数) | |
Original: Capacity The text has been machine-translated via Google Translate. You can help to correct and verify the translation. Click here for instructions. | |
コンテナが空であるかどうかをチェックします (パブリックメンバ関数) | |
要素数を返します Original: returns the number of elements The text has been machine-translated via Google Translate. You can help to correct and verify the translation. Click here for instructions. (パブリックメンバ関数) | |
要素の最大数を返します Original: returns the maximum possible number of elements The text has been machine-translated via Google Translate. You can help to correct and verify the translation. Click here for instructions. (パブリックメンバ関数) | |
ストレージを予約します (パブリックメンバ関数) | |
現在割り当てられているストレージに保持することができる要素の数を返します Original: returns the number of elements that can be held in currently allocated storage The text has been machine-translated via Google Translate. You can help to correct and verify the translation. Click here for instructions. (パブリックメンバ関数) | |
(C++11) |
未使用のメモリを解放してメモリ使用量を減らすことができます Original: reduces memory usage by freeing unused memory The text has been machine-translated via Google Translate. You can help to correct and verify the translation. Click here for instructions. (パブリックメンバ関数) |
Original: Modifiers The text has been machine-translated via Google Translate. You can help to correct and verify the translation. Click here for instructions. | |
全ての要素を削除します (パブリックメンバ関数) | |
要素を挿入します (パブリックメンバ関数) | |
(C++11) |
constructs element in-place (パブリックメンバ関数) |
要素を消去します (パブリックメンバ関数) | |
コンテナの末尾に要素を追加します (パブリックメンバ関数) | |
(C++11) |
終了時にその場で要素を構成します Original: constructs elements in-place at the end The text has been machine-translated via Google Translate. You can help to correct and verify the translation. Click here for instructions. (パブリックメンバ関数) |
最後の要素を削除します Original: removes the last element The text has been machine-translated via Google Translate. You can help to correct and verify the translation. Click here for instructions. (パブリックメンバ関数) | |
changes the number of elements stored (パブリックメンバ関数) | |
コンテナの内容をスワップします (パブリックメンバ関数) |
[編集] 非メンバ関数
辞書的にvector内の値を比較します Original: lexicographically compares the values in the vector The text has been machine-translated via Google Translate. You can help to correct and verify the translation. Click here for instructions. (関数テンプレート) | |
特殊化されたstd::swapアルゴリズム (関数テンプレート) |