Ошибки, баги, вопросы - страница 1086

 
Операция запятая (,) работает только в цикле и то - не всегда
bool f1( int a, int b ) { return ( a > b ); }

bool f2( int a )
{
        int i;
        for( Print( i ), i = 1;               i < 3;  Print( i ), i++ ); //нормально
         for( Print( i ), i = 1; (Print( i ), i < 3); Print( i ), i++ ); //ошибка компиляции
        bool b = f1((Print( i ), 1), 0) // ошибка компиляции
	int j;
	j = Print( 1 ), i;              // ошибка компиляции
         int k = (Print( 1 ), i);        // ошибка компиляции
        return (Print( 1 ), true);       // ошибка компиляции
}

В аргументах функций, при вычислении выражений, при инициализации и в return - ошибка компиляции

В справочнике MQL5 сказано: "Тип и значение результата совпадают с типом и значением правого выражения". Но это свойство фактически - не реализовано, что видно из примеров. В аргументах функций и при инициализации путаницы нет, поскольку такое выражение заключается в скобки (,) 

 
A100:
Операция запятая (,) работает только в цикле и то - не всегда

Это было оставлено только ради совместимости с существующим(ужасным) C/C++ кодом.

Упаси боже так писать. Любое такое использование запятой надо запрещать.

 
bas:
И при этом архив инструментов пишется в разные папки, и не происходит никаких накладок, пересечений и т.п., не теряется разметка на графиках? А чтобы потестировать на инструменте, которого нет у текущего брокера, нужно переключаться на сервер другого?

Из справки терминала:

Профили

Профили предназначены для удобной работы с группами графиков. В профилях запоминаются:

·графики, которые были открыты в момент сохранения профиля

·расположение и размер этих графиков;

·шаблоны, которые были применены к этим графикам.

Например: профиль "EURO". На графике "EURUSD D1" нарисовали линию. После переключения на другого брокера будет так-же открыт график "EURUSD D1" с нарисованной линией. А лучше просто попробуйте сами.

 
barabashkakvn:
Справка справкой, но у меня однажды при обновлении всё в терминале очистилось, теперь я стараюсь не экспериментировать.
 
Renat, подскажите что-нибудь по моему багу, третьи сутки жду.
 
bas:
Renat, подскажите что-нибудь по моему багу, третьи сутки жду.
Вам же уже ответили.
 
Ну да, а я ответил, что интернет здесь ни при чем.
 
bas:
Справка справкой, но у меня однажды при обновлении всё в терминале очистилось, теперь я стараюсь не экспериментировать.
JВероятно у Вас затерся профиль по умолчанию. Я же, чтобы не зависеть от умолчаний, создаю свой профиль. Мои профили еще не разу не затирались.
 
this позволяет обойти const
class A {
        void f() const;
        int i;
};

void A::f() const
{
        i = 0;      //ошибка     - правомерно
        this.i = 0; //нет ошибки - обходим const
}
 
A100:
this позволяет обойти const
Спасибо, исправим.
Причина обращения: