## 22.2 valarray の宣言

valarray は、以下のいずれかの方法で作成することができます。

- デフォルトコンストラクタ。デフォルトコンストラクタは、valarray の配列を使用可能にするために提供されます。作成後の valarray の調整には、resize 関数を使用します。

- 作成と初期化。valarray は、特定のサイズと値で作成と初期化を起動する以下の 2 つの手段を提供します。

  - `valarray(const T& v,size_t n)` は、各要素が値 `v` に初期化された、サイズ `n` の valarray を作成します。

  - `valarray(const T* p,size_t n)` は、各要素が `p` によって指示される配列の対応する要素で初期化された、サイズ `n` の valarray を作成します。このコンストラクタによって、プログラムはデータを (たとえば、ファイル操作の結果である) 通常の 'C' 配列から valarray へ最大の効率で転送することができます。

- コピーコンストラクタ。コピーコンストラクタは値という意味を持ちます。

- 変換コンストラクタ。クラス valarray は、添字演算によって生成される補助クラスからの変換のために、4 つの変換コンストラクタを提供します。これらのクラスについては、22.4.2 節で詳細に検討し、変換コンストラクタの使用方法も説明します。

以下の例は、最初の 3 つのカテゴリのコンストラクタの使用方法を示しています。

    #include <valarray>

    using std::valarray;

    valarray<int> v1;        // 空白の valarray を作成する
    valarray<int> v2(1,3);   // すべて 1 に初期化された
                                   // 3 つの要素の valarray を作成する
    v1.resize(3,2);                // 最初の valarray をすべて 2 に初期化された
                                   // 3 つの要素にサイズ変更する
    valarray<int> v3(v1);    // v3 には v1 の要素のコピーが返される

Copyright (c) 1998, Rogue Wave Software, Inc.
このマニュアルに関する誤りのご指摘やご質問は、電子メールにてお送りください。
OEM リリース, 1998 年 6 月