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

 
zaskok3:

Это баг или мое слабое понимание языка:

Результатом выражения тернарной операции являетсяя содержимое переменной Tmp1 или переменной Tmp2.

А в функцию Func должен передаваться не результат выражения, как у Вас, а ссылка

 

Как бороться с данной проблемой?

После установки эксперта на график, который строит РЕНКО графики, терминал намертво завис.

Перезагрузки терминала не помогают. Эксперт из папки удалил - не помогло!

Что делать?

win7/64 mt4/950

[Удален]  
Slawa:

Результатом выражения тернарной операции являетсяя содержимое переменной Tmp1 или переменной Tmp2.

Именно содержимое, а не сама переменная? Видимо, у меня здесь и проявилось слабое понимание. Спасибо!

Попробовал тернарную альтернативу, не вышло:

//  Func((0 > 1) ? Tmp1 : Tmp2); // '?' - parameter passed as reference, variable expected
  
  // Так не пашет
  (0 > 1) ? Func(Tmp1) : Func(Tmp2); // 'Func' - expression of 'void' type is illegal
  
  // Так, конечно, работает
  if (0 > 1)
    Func(Tmp1);
  else
    Func(Tmp2);

Тернарная здесь без присваивания же.

 
zaskok3:

Именно содержимое, а не сама переменная? Видимо, у меня здесь и проявилось слабое понимание. Спасибо!

Попробовал тернарную альтернативу, не вышло:

Тернарная здесь без присваивания же.

Результатом тернарной операции является либо результат первого выражения, либо результат второго выражения в зависимости от результата условного выражения.

Полученный результат должен быть куда-либо присвоен (либо быть участником другого выражения), так как является rvalue

Это примерно то же самое, что просто написать

int a=1;
int b=2;

a + b;
[Удален]  

Slawa:

Полученный результат должен быть куда-либо присвоен (либо быть участником другого выражения), так как является rvalue

Это примерно то же самое, что просто написать

Если заменяю void Func на int Func, тогда, действительно, один в один результат. С void - облом. Это как раз из-за выделенной фразы?
 
zaskok3:
Если заменяю void Func на int Func, тогда, действительно, один в один результат. С void - облом. Это как раз из-за выделенной фразы?
Да
[Удален]  
Slawa:
Да
Усвоил. Спасибо за ликбез!
[Удален]  
Aleksandr Novikov:

Как бороться с данной проблемой?

После установки эксперта на график, который строит РЕНКО графики, терминал намертво завис.

Перезагрузки терминала не помогают. Эксперт из папки удалил - не помогло!

Что делать?

win7/64 mt4/950

Попробуйте удалить все файлы с расширением CHR из папки <каталог терминала>\profiles\default\
[Удален]  

Уважаемые разработчики! На форум не вставляются ссылки!

Когда печатаешь пост, нажимаешь на кнопку "Ссылка (Ctrl+K)", вставляешь ссылку, слово подчеркивается. Нажимаешь на кнопку "Добавить" - ссылки нет!

[Удален]  
Как поменять GMT?