Set

Устанавливает значение для элемента вектора по указанному индексу .

bool vector::Set(
  ulong   index,     // индекс элемента
  double  value      // значение
   );

Параметры

index

[in]  Индекс элемента, которому необходимо установить значение.

value

[in]  Значение.

Возвращаемое значение

Возвращает true в случае успеха, иначе false.

Примечание

Метод Set делает то же самое, что и присваивание значения через квадратные скобки, а именно: vector[index]=value. Добавлен для удобства переноса кода из языков, где используется именно такая запись. Пример ниже показывает оба варианта заполнения вектора значениями по указанному индексу.

Пример:

void OnStart()
  {
//---
   vector v1(10VectorAssignValues);
   Print("v1 = "v1);
 
   vector v2(10VectorSetValues);
   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(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;
     }
  }