Включаемый файл

 
//+------------------------------------------------------------------+
//|                                                    Ord_Array.mq4 |
//|                                                      Pingvin-man |
//+------------------------------------------------------------------+
#property copyright "Pingvin-man"
#property link      "Pingvin-man@mail.ru"
 
//------------------------------------------------------------------------------------------------------------------------------------------------
//------------------------------------------------------------------------------------------------------------------------------------------------ 
void Ord_Array (int Array[], int sk)                                      // объявление пользовательской функции. Начальные данные - название массива и счётчик        
 
{
int Vol=ArraySize(Array)+1;                                                // Выясняем текущий размер массива и увеличиваем его на 1
ArrayResize(Array,Vol);                                                    // Устанавливаем новый размер массива (прибавляем ещё один элемент)   
Array[sk-1]=OrderTicket();                                                 // Присваиваем sk_му элементу массива значение тикета ордера     
return;                                                                    // Функция ничего не возвращает, т.к. результат - массив (статическая переменная)           
} 
//------------------------------------------------------------------------------------------------------------------------------------------------
//------------------------------------------------------------------------------------------------------------------------------------------------

Всем привет.

Создаю пользовательскую функцию.

Не пойму, почему выдаёт ошибку при компиляции - вот здесь:

Array[sk-1]=OrderTicket()
.Говорит, что array ithem cannot be assighned.

Или вложенные файлы не компилируются отдельно?

И осуществлять поиск ошибок нужно уже при окончательной сборке советника?

Спасибо.

Сильно только не пинайте. :-)

 

Массив можно передавать только по ссылке. Следует писать:

void Ord_Array (int& Array[], int sk)
 
Спасибо. Почитал похожие темы, разобрался.