Ошибки, баги, вопросы - страница 3479
Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь
https://en.cppreference.com/w/cpp/language/operators
Welcome)))
До C++17 operatator&& - обычный метод.
До C++17 operatator&& - обычный метод.
Обрати внимание на это
В любом случае будут оценены оба операнда. То, что ты написал, это как раз в тему к А100, каюсь, не заметил. Да, начиная после c++17 при перегрузке перестает теряться
Every value computation and side effect of the first (left) argument of the built-in logical AND operator &&, the built-in logical OR operator || and the built-in comma operator , is sequenced before every value computation and side effect of the second (right) argument.
Это значит, что стандарт гарантирует последовательность оценки операндов. В нашем случае сначала должно вызываться f(1) и только потом f(2).
PS Я же говорю, Будапешт отдыхает)))
всем коллективом, пару-тройку недель, выпиливали UB из десятилетнего легаси, пока не добились детерминированного результата.
Это UB?
В свежей библиотеке написал такое.
Это UB?
Нет, но стиль опасный.
Every value computation and side effect of the first (left) argument of the built-in logical AND operator &&, the built-in logical OR operator || and the built-in comma operator , is sequenced before every value computation and side effect of the second (right) argument.
Нет, но стиль опасный.
Опасный стиль тоже в команде выпиливаете?
Ну давай же. MetaQuotes не следует никаким стандартам MQL и, конечно же, C++17. MQL основан на C++, ни больше, ни меньше.
В любом случае, только MetaQuotes может сказать что-то полезное по этому вопросу. Мое мнение: это не ошибка, порядок последовательности не определен, и на него не следует полагаться. Хотя я понимаю вашу логическую точку зрения.
В данном вопросе мы просто не обратили внимание на обновление стандарта C++17, где впервые явно указан порядок исполнения параметров перегруженной операции. До этого был UB
Мы следим за данной дискуссией, но пока ничего не обещаем
В данном вопросе мы просто не обратили внимание на обновление стандарта C++17, где впервые явно указан порядок исполнения параметров перегруженной операции. До этого был UB
Просьба привести цитату.
Опасный стиль тоже в команде выпиливаете?
Не. Это мой личный болезненный опыт)))
mutable data менять либо в loop-statement, либо в iteration-expression. При смешении, можно много кофе (и не только) выпить, пока найдешь где ты сам себе злобный буратино)))
mutable data менять либо в loop-statement, либо в iteration-expression. При смешении, можно много кофе (и не только) выпить, пока найдешь где ты сам себе злобный буратино)))
Понял, спасибо.