![MQL5 - Язык торговых стратегий для клиентского терминала MetaTrader 5](https://c.mql5.com/i/registerlandings/logo-2.png)
Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь
Если размер массива доходит до 131070 (ArraySize(х)=131070; ArrayRange(х,0)=43690), то выскакивает эта ошибка. Если ограничить до этого размера 131070 и дальше не добавлять, то все порядке.
Есть какое-то ограничение размеру массива?
это похоже на целочисленное переполнение 0x1FFFF = 131071
возможно баг в МТ.
вот давали бы осмысленные названия было бы чуть понятней :)
Taras Slobodyanik:
вот давали бы осмысленные названия было бы чуть понятней)
Благодарю!
Это ошибка компилятора, лучше предоставить информацию разработчикам для исправления
При чём тут компилятор и разработчики? Ошибка исполнения, суть - выход за пределы адресного пространства данных. Причина - чрезмерный размер массива. Ошибка произошла при попытке записи в новый его элемент. Всё.
Всё таки не понятно с указателем на массив, как это мне может решить проблему. При самом заполнение массива уже access violation и даже до вызова функций не доходит. Вот сделал отдельный кусок для тестов, если M1 баров достаточна то access violation (в моем случае 43690). Попробуйте на своей платформе, если появится access violation, как вы бы переделали конкретный пример?
Естественно. На своей платформе повторять не буду.
У Вас цикл организован неверно. Поэтому выход за всякие пределы. Нулевой бар участвует в подсчёте общего количества баров.
Естественно. На своей платформе повторять не буду.
У Вас цикл организован неверно. Поэтому выход за всякие пределы. Нулевой бар участвует в подсчёте общего количества баров.
К чему это? Все уже решено здесь.
вот давали бы осмысленные названия было бы чуть понятней :)
У структуры можно заранее задать значение? Например для массива это выглядит так double TestLinReg[5]={2.8,3.4,4,4.6,5.2}; У структуры можно так сделать?
У структуры можно заранее задать значение? Например для массива это выглядит так double TestLinReg[5]={2.8,3.4,4,4.6,5.2}; У структуры можно так сделать?
описание жеж есть:
Конструктор - это специальная функция, которая вызывается автоматически при создании объекта структуры или класса и обычно используется для инициализации членов класса. Далее мы будем говорить только о классах, при этом все сказанное относится и к структурам, если не оговорено иное. Имя конструктора должно совпадать с именем класса. Конструктор не имеет возвращаемого типа (можно указать тип void).
https://www.mql5.com/ru/docs/basis/types/classes
или так:
описание жеж есть:
Если честно, то я в документации и в описание половину не понимаю вовсе о чем речь. Поэтому я всегда разбираю всякие примеры на части и принтом вывожу каждое значение. А если еще в описание пример выдает ошибку, то такому описанию вовсе ноль ценности для меня.
Если честно, то я в документации и в описание половину не понимаю вовсе о чем речь. Поэтому я всегда разбираю всякие примеры на части и принтом вывожу каждое значение. А если еще в описание пример выдает ошибку, то такому описанию вовсе ноль ценности для меня.
Здесь условный оператор if находится в глобальном контексте, что запрещено. Операторы и команды могут находиться только в теле функций. За пределами функций могут находиться только объявления типов данных, переменных, макросов и констант.
Здесь условный оператор if находится в глобальном контексте, что запрещено. Операторы и команды могут находиться только в теле функций. За пределами функций могут находиться только объявления типов данных, переменных, макросов и констант.
Но согласитесь со мной, что пример в документации (что как раз предназначено для чайников как я) не должен быть с ошибками.