Set

根据指定索引设置向量元素值。

bool vector::Set(
  ulong   index,     // 元素索引
  double  value      // 值
   );

参数

index

[in]  需要为其设置值的元素索引。

[in]  值。

返回值

如果成功返回true,否则返回false。

注意

Set方法的作用与使用方括号赋值的作用相同,即:vector[index]=value. 添加该方法是为了简化从使用此类符号的语言中传递代码的过程。下面的示例显示了按指定索引用值填充向量的两个选项。

示例:

void OnStart()
  {
//---
   vector v1(10VectorAssignValues);
   Print("v1 = "v1);
 
   vector v2(10VectorSetValues);
   Print("v2 = "v2);
  }
 /* Result
  v1 = [1,2,4,8,16,32,64,128,256,512]
  v2 = [1,2,4,8,16,32,64,128,256,512]
  */
//+-------------------------------------------------------------------------+
//| 通过赋值运算用数字的幂填充向量                                              |
//+-------------------------------------------------------------------------+
void VectorAssignValues(vectorvdouble initial=1)
  {
   double value=initial;
   for(ulong k=0k<v.Size(); k++)
     {
      v[k]=value;
      value*=2;
     }
  }
//+--------------------------------------------------------------------------+
//| 使用Set方法用数字的幂填充向量                                                |
//+--------------------------------------------------------------------------+
void VectorSetValues(vectorvdouble initial=1)
  {
   double value=initial;
   for(ulong k=0k<v.Size(); k++)
     {
      v.Set(kvalue);
      value*=2;
     }
  }