Set

指定されたインデックスのベクトル要素の値を設定します。

bool vector::Set(
  ulong  index,     // 要素インデックス
  double  value     // 値
  );

パラメータ

index

[in] 値を設定する必要がある要素のインデックス

value

[in] 値

戻り値

成功の場合は true、それ以外の場合は false

注意事項

Setメソッドは、角括弧を使用した値の割り当て(vector[index]=value)と同等です。このメソッドは、このタイプの表記法が使用されている言語からのコードの転送を簡素化するために追加されました。以下の例は、指定されたインデックスによる値をベクトルに入力するための両方のオプションを示しています。

例:

void OnStart()
 {
//---
  vector v1(10, VectorAssignValues);
  Print("v1 = ", v1);
 
  vector v2(10, VectorSetValues);
  Print("v2 = ", v2);
 }
 /* 結果
v1 = [1,2,4,8,16,32,64,128,256,512]
v2 = [1,2,4,8,16,32,64,128,256,512]
 */
//+-------------------------------------------------------------------------+
//| 代入演算を通じてベクトルに数値の累乗を入力する |
//+-------------------------------------------------------------------------+
void VectorAssignValues(vector& v, double initial=1)
 {
  double value=initial;
  for(ulong k=0; k<v.Size(); k++)
    {
    v[k]=value;
    value*=2;
    }
 }
//+--------------------------------------------------------------------------+
//| Setメソッドを使用してベクトルに数値のべき乗を入力する               |
//+--------------------------------------------------------------------------+
void VectorSetValues(vector& v, double initial=1)
 {
  double value=initial;
  for(ulong k=0; k<v.Size(); k++)
    {
    v.Set(k, value);
    value*=2;
    }
 }