バナーをクリックすれば目次に戻ります

Copyright 1999 Rogue Wave Software
Copyright 1999 Sun Microsystems, Inc.


RWTValVector<T>

形式

#include <rw/tvvector.h>
RWTValVector<T> vec;

説明

このクラスは、型 T のオブジェクトから成る、パラメータ化された単純なベクトルです。コレクション内にどれだけのオブジェクトを保持しなければならないかが正確に分かる場合には、このクラスは非常に便利です。いくつあるか分からないオブジェクトをコレクションに挿入したいのであれば、クラス RWTValOrderedVector<T> を使用する方をお勧めします。

クラス T には、次のものが必要です。

持続性

同形

#include <rw/tvvector.h>
#include <rw/rwdate.h>
#include <rw/rstream.h>

main()  {
  RWTValVector<RWDate> week(7);

  RWDate begin;   // 今日の日付

  for (int i=0; i<7; i++)
    week[i] = begin++;

  for (i=0; i<7; i++)
    cout << week[i] << endl;

  return 0;
}

プログラム出力:

March 16, 1996
March 17, 1996
March 18, 1996
March 19, 1996
March 20, 1996
March 21, 1996
March 22, 1996

公開コンストラクタ

RWTValVector<T>();

長さゼロの空のベクトルを作成します。

RWTValVector<T>(size_t n);

長さ n のベクトルを作成します。各要素の値はクラス T のデフォルトコンストラクタで設定します。組み込み型の場合、それらの値は無意味な値である可能性があります。

RWTValVector<T>(size_t n, const T& ival);

長さ n のベクトルを作成し、各要素の値を ival に初期化します。

RWTValVector<T>(const RWTValVector& v);

自分自身を v のコピーとして作成します。v 内の各要素を自分自身にコピーします。

~RWTValVector<T>();

自分自身内のすべての要素について、デストラクタを呼び出します。

公開演算子

RWTValVector<T>&
operator=(const RWTValVector<T>& v);

自分自身を v と同じ長さに設定し、v のすべての要素を自分自身にコピーします。

RWTValVector<T>&
operator=(const T& ival);

自分自身内のすべての要素に値 ival を設定します。

const T&
operator()(size_t i) const;
T&
operator()(size_t i);

ベクトル内の i 番目の値への参照を返します。インデックス i は 0 〜 (ベクトル長 -1) の範囲になければなりません。境界検査は行いません。

const T&
operator[](size_t i) const;
T&
operator[](size_t i);

ベクトル内の i 番目の値への参照を返します。インデックス i は 0 〜 (ベクトル長 -1) の範囲になければなりません。境界検査を行います。

公開メンバー関数

const T*
data() const;

自分自身の生データへのポインタを返します。この関数の使用には注意を要します。

size_t
length() const;

ベクトルの長さを返します。

void
reshape(size_t N);

ベクトルの長さを N に変更します。その結果ベクトルが長くなると、T のデフォルトコンストラクタによってその部分の初期値が設定されます。