Особенности языка mql4, тонкости и приёмы работы - страница 5

 
Artyom Trishkin:

Проверить прямо сейчас не могу, но вроде как MQL_TESTER включает в себя всё остальное. А вот всё остальное по-отдельности не включает в себя друг друга.

Т.е., для того, чтобы понять, что программа работает в тестере (в любом из перечисленных режимов), достаточно проверить лишь самый первый флаг.

Пример был о другом.
 
fxsaber:
Пример был о другом.
Тогда не понял - о чём?
 
Artyom Trishkin:
Тогда не понял - о чём?
static const инициализирована функцией.
 
fxsaber:
static const инициализирована функцией.
А-а-а ..., "...Семён-Семёёёёныч"... (с)
 
fxsaber:
static const инициализирована функцией.

1. В каком месте программы это находится?

Предполагаю что в области глобальных переменных. Не говоря уже о том что глобальные переменные не нуждаются в модификаторе static так ещё и последовательность инициализации играет очень большую роль.

Мой уровень профессионализма в программировании гораздо ниже вашего, потому я провожу некоторые эксперименты того уровня о которых вы даже и не думаете... Предположительно.

Так вот последовательность инициализации: (для тех кто не знает об этом)

Сначала переменные глобального уровня потом статические расположенные в зависимости от первоочерёдности функций, OnInit(), OnTick() или OnCalculate()... дальше мне было не интересно, а локальные в своё время. Так вот в этом коде получается, что функция вызывается до окончания инициализации статических переменных, отсюда и ошибка о которой идёт речь. Функция вызвана раньше чем инициализирована переменная stInt.

2. В начале этой ветки говорили о закрытии ордеров по цене OrderClosePrice() помните? Тоже работает, но можно нарваться на неприятность... Так-же и в этом случае.

Отсюда и отсутствие в справке такой возможности. Дабы при написании г***кода не заваливали СД претензиями, что не работает то, что заявлено в документации. Сами знаете сколько таких программистов присутствуют здесь. И сколько уже пожизненно забаненых неадекватов. Опять-же предположительно...

 
Alexey Viktorov:
Видимо, прочли что-то между словами единственной фразы

Никакого скрытого подтекста в этой фразе нет.


Что же касается примера, то он рабочий при любом раскладе.

 
fxsaber:
Видимо, прочли что-то между словами единственной фразы

Никакого скрытого подтекста в этой фразе нет.


Что же касается примера, то он рабочий при любом раскладе.

Так там кроме вашей фразы есть ссылка в которой приведён пример кода с ошибкой. Мой ответ был не на вашу фразу, а на тот ошибочный код, который как раз и относится к г***коду.

В том что ваш пример кода вполне рабочий у меня ни каких сомнений.

 
Alexey Viktorov:

Так там кроме вашей фразы есть ссылка в которой приведён пример кода с ошибкой.

В названии ветки есть слово "тонкости". Тот код и есть демонстрация тонкости.

С наскока не вижу причин, не позволяющих разработчикам сделать этот код рабочим - что хотел увидеть автор. Сделают или нет - на то есть его заявка в СД. Но сам пример показателен.

 
fxsaber:

В названии ветки есть слово "тонкости". Тот код и есть демонстрация тонкости.

С наскока не вижу причин, не позволяющих разработчикам сделать этот код рабочим - что хотел увидеть автор. Сделают или нет - на то есть его заявка в СД. Но сам пример показателен.

К тонкостям это стало относиться после нашего диалога. А до того как, это было похоже на сообщение об ошибке. Только ошибкой это назвать никак нельзя.

А есть предположение как изменить последовательность инициализации чтобы такой код работал так как хочется? Почему-то мне кажется, что эта заявка будет висеть без ответа.

 
Alexey Viktorov:

К тонкостям это стало относиться после нашего диалога. А до того как, это было похоже на сообщение об ошибке. Только ошибкой это назвать никак нельзя.

Если бы это было ошибкой, то была бы выбрана другая ветка. Более того, репостить бы даже не стал, т.к. в СД заявка висит. Это именно тонкость, о которой полезно знать.

А есть предположение как изменить последовательность инициализации чтобы такой код работал так как хочется? Почему-то мне кажется, что эта заявка будет висеть без ответа.

Не программист. Предполагаю, что в C++ этот код рабочий.
Причина обращения: