ためになるホームページ お問い合わせ




TOP > C++ > ベクトル vector
ベクトル vector
コンテナの一つで、動的配列が使用できる。

コンストラクタ
explicit vector(const allocator &a = Allocator());
空のベクトルの生成。vector<int> a;とかで宣言する時に呼ばれるコンストラクタ。
explicit vector(size_type num, const T &val = T(), const &a = Allocator());
valの値を持つnum個のベクトルを作成。
vector(const vector<T, Allocator> &ob);
obと同じ要素を含むベクトルを作成。
template <class InIter> vector(InIter start, InIter end, const Allocator &a = Allocator());
反復子atartとendによって、指定された範囲に含まれる要素のベクトルを作成する。

メンバ関数
template <class InIter>
void assign(InIter start, InIter end);
startとendによって定義されるシーケンスをベクトルに代入する。
template <class Size, class T>
void assign(Size num, const T &val=T());
値valを持つベクトルnum要素に代入する。
reference at(size_type i);
const_reference at(size_type i) const;
iに指定した要素への参照を返す。
reference back();
const_reference back();
ベクトル内の最後の要素への参照を返す。
iterator begin();
const_iterator begin();
ベクトルの最初の要素を指す反復子を返す。
size_type capacity() const; ベクトルの現在のサイズを返す(割り当てるメモリを増やすことなく格納できる要素の数)。
void clear(); ベクトルの全ての要素を削除する。
bool empty() const; 呼び出し元のベクトルが空の時は真、空でない時は偽を返す。
iterator end();
const_iterator end();
ベクトルの末尾を指す反復子を返す。
iterator erase(iterator i); iが指す要素を削除する。削除した用をの後を指す反復子を返す。
iterator erase(iterator start, iterator end); startからendまでの要素範囲を削除する。削除した最後の要素の後の反復子を返す。
reference front();
const_reference front() const;
ベクトル内の最初要素への参照を返す。
allocator_type get_allocator() const; ベクトルのアロケータを返す。
iterator insert(iterator i, const T &val = T()); iに指定した要素の直前にvalを挿入する。この要素を指す反復子を返す。
void insert(iterator i, size_type num, const T &val); iに指定した要素の直前にnum個のvalを挿入する。
template <class InIter>
void insert(iterator i, InIter start, InIter end);
iに指定した要素の直前にstartとendによって定義されているシーケンスを挿入する。
size_type max_size() const; ベクトルに格納できる要素の最大数を返す。
reference operator[](size_type i) const;
const_reference operator[](size_type i) const;
iに指定した要素への参照を返す。
void pop_back(); ベクトル内の最後の要素を削除する。
void push_back(const T &val); valで指定した値を持つ要素をベクトルの末尾に追加する。
reverse_interator rbegin();
const_reverse_interator rbegin();
ベクトルの末尾を指す逆反復子を返す。
reverse_iterator rend();
const_reverse_iterator rand() const;
ベクトルの先頭を指す逆反復子を返す。
void reserve(size_type num); ベクトルのサイズがnum以上になるように設定する。
void resize(size_type num, T val=T()); ベクトルのサイズをnumに指定したサイズに変更する。サイズを増やす場合は、valに指定した値を持つ要素を末尾に追加する。
size_type size() const; ベクトルに現在含まれている要素の数を返す。
void swap(vector<T, Allocator> &ob) 呼び出し元のベクトルに含まれている要素をob内の要素と交換する。

vectorの例
#include <iostream>
#include <vector>
using namespace std;

int 
main(int argc, char* argv[]) {
  vector<int> v;
  int i;
  printf ("vector size = %d\n", v.size());

  for ( i = 0; i < 5; i++ ) {
    v.push_back(i);
  }
 
  printf ("vector size = %d\n", v.size());

  vector<int>::iterator p = v.begin();
  for (;p != v.end();*p++) {
    printf ("%d\n", *p);
  }


  return(0);
}







Copyright 2007 ためになるホームページ All Rights Reserved.