Alexey Kozitsyn: Ничего себе тонкий момент... В СД написали?
Автор написал. Возможности языка давно уже не соответствуют старой документации, т.е. фактически используются недокументированные вещи, претензии по которым, соответственно, выставлять странно.
Статическая переменная может быть проинициализирована соответствующей ее типу константой или константным выражением, в отличие от простой локальной переменной, которая может быть проинициализирована любым выражением.
Но никак не функцией.
Вот так работает
#property strict#property indicator_chart_windowint TestBrokenStatic()
{
staticint stInt = 101;
stInt++;
return stInt;
}
intOnInit()
{
staticint result = 0;
result = TestBrokenStatic();Print("TestStatic Expected result 102 - Actual result=", result);
result = TestBrokenStatic();
Print("TestStatic Expected result 103 - Actual result=", result);
returnINIT_SUCCEEDED;
}
intOnCalculate(constint rates_total,
constint prev_calculated,
constdatetime &time[],
constdouble &open[],
constdouble &high[],
constdouble &low[],
constdouble &close[],
constlong &tick_volume[],
constlong &volume[],
constint &spread[])
{
return rates_total;
}
2017.04.2913:49:51.546 !Test USDCHF,M15: TestStatic Expected result 103 - Actual result=1032017.04.2913:49:48.457 !Test USDCHF,M15: TestStatic Expected result 102 - Actual result=1022017.04.2913:49:40.089 Custom indicator Test\!Test USDCHF,M15: loaded successfully
Возможности языка давно уже не соответствуют старой документации, т.е. фактически используются недокументированные вещи, претензии по которым, соответственно, выставлять странно.
Проверить прямо сейчас не могу, но вроде как MQL_TESTER включает в себя всё остальное. А вот всё остальное по-отдельности не включает в себя друг друга.
Т.е., для того, чтобы понять, что программа работает в тестере (в любом из перечисленных режимов), достаточно проверить лишь самый первый флаг.
Для авторизации и пользования сайтом MQL5.com необходимо разрешить использование файлов Сookie.
Пожалуйста, включите в вашем браузере данную настройку, иначе вы не сможете авторизоваться.
Вы вошли в аккаунт. Двухфакторная аутентификация отключена. Настройте её заново и отсканируйте новый QR-код или продолжите с отключённой двухфакторной аутентификацией.
Ничего себе тонкий момент... В СД написали?
Автор написал. Возможности языка давно уже не соответствуют старой документации, т.е. фактически используются недокументированные вещи, претензии по которым, соответственно, выставлять странно.
Форум по трейдингу, автоматическим торговым системам и тестированию торговых стратегий
Как быстро сравнить double и QNaN ?
fxsaber, 2016.10.11 15:56
Осталось незамеченным
Начальное значение глобальной переменной теперь можно объявлять через функцию!
То же самое касается и остальных static-переменных.
Странно, что разработчики про это нововведение умолчали.
На тему static такой тонкий момент есть в обоих языках
Ничего себе тонкий момент... В СД написали?
А ничего что в справке написано что статическая переменная ... читайте сами
Но никак не функцией.
Вот так работает
А ничего что в справке написано что статическая переменная ... читайте сами
Но никак не функцией.
Вот так работает
А ничего что в справке написано что статическая переменная ... читайте сами
А ничего, что ссылку на документация привел сразу и ссылку на обсуждение кода от разработчиков полугодовалой давности... следуйте своему совету.
Особенно, со static const.
А ничего, что ссылку на документация привел сразу и ссылку на обсуждение кода от разработчиков полугодовалой давности... следуйте своему совету.
Особенно, со static const.
Я по ссылке не смотрел по причине незнания аглицкого языка, а мех. перевод иногда более непонятен чем китайско-японский с примесью корейского.
Да и не надо так болезненно реагировать. В моих словах и намёка нет на упрёк в том что вы не обратили внимание на такую мелочь.
Я по ссылке не смотрел по причине незнания аглицкого языка, а мех. перевод иногда более непонятен чем китайско-японский с примесью корейского.
Да и не надо так болезненно реагировать. В моих словах и намёка нет на упрёк в том что вы не обратили внимание на такую мелочь.
Форум по трейдингу, автоматическим торговым системам и тестированию торговых стратегий
Особенности языка mql4, тонкости и приёмы работы
fxsaber, 2017.04.29 11:07
Возможности языка давно уже не соответствуют старой документации, т.е. фактически используются недокументированные вещи, претензии по которым, соответственно, выставлять странно.
Тогда компилятор должен давать ошибку...
Может и должен, но ... имеем то что имеем.
А разве в старой документации было не так?
псы. С большим запозданием я понял смысл этих ссылок...
Но вот и опровержение высказывания
Осталось незамеченным
Начальное значение глобальной переменной теперь можно объявлять через функцию!
То же самое касается и остальных static-переменных.
Странно, что разработчики про это нововведение умолчали.
Проверить прямо сейчас не могу, но вроде как MQL_TESTER включает в себя всё остальное. А вот всё остальное по-отдельности не включает в себя друг друга.
Т.е., для того, чтобы понять, что программа работает в тестере (в любом из перечисленных режимов), достаточно проверить лишь самый первый флаг.