Скачать MetaTrader 5

At

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

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

Параметры

pos

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

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

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

Примечание

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

Пример:

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


Обновлено: 2015.12.03