At

Получает элемент из указанной позиции массива.

double  At(
   int  pos      // позиция 
   ) const

Параметры

pos

[in]  Позиция искомого элемента в массиве.

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

Значение элемента в случае успеха, DBL_MAX если была попытка получить элемент из не существующей позиции (при этом код последней ошибки ERR_OUT_OF_RANGE).

Примечание

Разумеется, DBL_MAX может быть и валидным значением элемента массива, поэтому, получив такое значение, всегда проверяйте код последней ошибки.

Пример:

//--- example for CArrayDouble::At(int)
#include <Arrays\ArrayDouble.mqh>
//---
void OnStart()
  {
   CArrayDouble *array=new CArrayDouble;
   //---
   if(array==NULL)
     {
      printf("Object create error");
      return;
     }
   //--- add arrays elements
   //--- . . .
   for(int i=0;i<array.Total();i++)
     {
      double result=array.At(i);
      if(result==DBL_MAX && GetLastError()==ERR_OUT_OF_RANGE)
        {
         //--- ошибка чтения из массива
         printf("Get element error");
         delete array;
         return;
        }
      //--- use element
      //--- . . .
     }
   //--- delete array
   delete array;
  }