Посмотрите ещё раз ссылку в моём сообщении. Там говорится не про глобальные переменные программы, а про глобальные переменные терминала (почему-то программисты любят перегружать не только функции, но и термины).
Yedelkin: Посмотрите ещё раз ссылку в моём сообщении. Там говорится не про глобальные переменные программы, а про глобальные переменные терминала (почему-то программисты любят перегружать не только функции, но и термины).
Yedelkin: Там говорится не про глобальные переменные программы, а про глобальные переменные терминала (почему-то программисты любят перегружать не только функции, но и термины).
Глобальные переменные клиентского терминала появились в тройке (а точнее в двойке; тройка стала, когда появились пользовательские индикаторы). Тогда в MQL II в принципе не было понятия "функция". То есть, в абстракции "MQL-программа" глобальные переменные клиентского терминала смотрелись очень гармонично. Когда перешли к четвёрке, термин уже было поздно менять.
Я не буду перечислять все новые возможности и особенности нового терминала и языка. Их действительно много, и некоторые новинки вполне достойны освещения в отдельной статье. Вы не увидите здесь кода, написанного по принципам объектно-ориентированного программирования — это слишком серьезная тема для того, чтобы просто быть упомянутой в контексте как дополнительная вкусность для кодописателей. В этой статье остановимся подробней на индикаторах, их строении, отображении, видах, а также особенностях их написания по сравнению с MQL4.
stringo: Глобальные переменные клиентского терминала появились в тройке (а точнее в двойке; тройка стала, когда появились пользовательские индикаторы). Тогда в MQL II в принципе не было понятия "функция". То есть, в абстракции "MQL-программа" глобальные переменные клиентского терминала смотрелись очень гармонично. Когда перешли к четвёрке, термин уже было поздно менять.
Да я ж не в претензии. Просто при первых шагах в изучении языка перегрузка фразы "глобальные переменные" вводит в небольшой ступор. Что видно и на моём примере, и на примере x100intraday. Поэтому решил объяснить коллеге, что есть такая проблема/особенность. ...Но если затронут вопрос терминологии, то, исходя из истории темы, я бы назвал вторую категорию переменных "глобальные переменные программы".
x100intraday: Как сохранить последнее значение переменной при переходах между таймфреймами? Происходит же просесс деинициализации-инициализации, всё сбрасывается... а нужно, чтобы сохранялось.
Пришло в голову, что есть и третий путь - использовать пользовательские события. Т.е. на один символ вешается эксперт-приёмник пользовательских событий, а на нужные символы вешаются программы-передатчики пользовательских событий. Эксперт-приёмник обрабатывает приходящие пользовательские события так, как его обучат. В том числе, может запоминать передаваемое значение переменной. Базовый подход - в статье Lizar'а (название не помню).
5. MQL5: Исправлено поведение функции ArrayIsDynamic. При инициализации динамического массива списком инициализации функция ArrayIsDynamic определяла массив как статический.
Как функция ArrayIsDynamic будет определять массив при инициализации динамического массива списком инициализации?
Посмотрите ещё раз ссылку в моём сообщении. Там говорится не про глобальные переменные программы, а про глобальные переменные терминала (почему-то программисты любят перегружать не только функции, но и термины).
Там говорится не про глобальные переменные программы, а про глобальные переменные терминала (почему-то программисты любят перегружать не только функции, но и термины).
Глобальные переменные клиентского терминала появились в тройке (а точнее в двойке; тройка стала, когда появились пользовательские индикаторы). Тогда в MQL II в принципе не было понятия "функция". То есть, в абстракции "MQL-программа" глобальные переменные клиентского терминала смотрелись очень гармонично. Когда перешли к четвёрке, термин уже было поздно менять.
Как сохранить последнее значение переменной при переходах между таймфреймами? Происходит же просесс деинициализации-инициализации, всё сбрасывается... а нужно, чтобы сохранялось.
Да я ж не в претензии.
А по моему посту чуть выше будут какие либо комментарии? Кстати счет не только не в той группе а точнее он реально похоже открылся не на том сервере.
А по моему посту чуть выше будут какие либо комментарии? Кстати счет не только не в той группе а точнее он реально похоже открылся не на том сервере.
5. MQL5: Исправлено поведение функции ArrayIsDynamic. При инициализации динамического массива списком инициализации функция ArrayIsDynamic определяла массив как статический.
Как функция ArrayIsDynamic будет определять массив при инициализации динамического массива списком инициализации?
Статическим.
Массив, выглядящий динамическим и имеющий список инициализации, считается статическим с автоматически определяемым размером.
Статическим.
Массив, выглядящий динамическим и имеющий список инициализации, считается статическим с автоматически определяемым размером.