Форум программистов, компьютерный форум CyberForum.ru

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
nexen
187 / 180 / 3
Регистрация: 27.01.2012
Сообщений: 1,335
#1

Поряд вычисления операндов в операции - C++

27.11.2013, 17:04. Просмотров 281. Ответов 1
Метки нет (Все метки)

Предположим есть такой код:
C++
1
2
SomeType x = STCreate3() + STCreate1() * STCreate2();
//Все эти функции возвращают объект SomeType
Могу ли я быть уверен, что всегда (независимо от ключа оптимизации) будет выполнено так:
STCreate1()
StCreate2()
STCreate3()
?
Или же это UB?
А если говорить о базовых типах, допустим, int?
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
27.11.2013, 17:04     Поряд вычисления операндов в операции
Посмотрите здесь:

error C2443: конфликт размеров операндов. C++
Определить результат целочисленного деления a на b, не используя стандартные операции вычисления остатка C++
Создать 100 файлов. Имя каждого файла должно соответствовать его поряд-ковому номеру. C++
C++ IntelliSense: несовместимые типы операндов ("char" и "const char *")
C++ Вычислить значение выражения, используя стек операндов
написать логическое выражение , представляющее условие (знаки операций отделять от операндов пробелами): C++
Ошибка: несовместимые типы операндов ("int *" и "int") C++
Ошибка: отсутствует оператор >>,соответствующий этим операндам типы операндов: std::ostream>>const double C++
Несовместимые типы операндов ("HKL" и "int") C++
C++ Ошибка: отсутствует оператор ">>", соответствующий этим операндам типы операндов: std::is
C++ Порядок вычисления операндов при сложении
C++ Несовместимые типы операндов "char" и "const char*"

Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
CheshireCat
Эксперт С++
2910 / 1238 / 78
Регистрация: 27.05.2008
Сообщений: 3,321
27.11.2013, 17:43     Поряд вычисления операндов в операции #2
Не можешь. Более того, порядок вычисления операндов заведомо не определен и оставлен на усмотрение разработчиков компилятора.

Добавлено через 5 минут
Стандарт, 1.9/15:
Except where noted, evaluations of operands of individual operators and of subexpressions of individual expressions are unsequenced.
Yandex
Объявления
27.11.2013, 17:43     Поряд вычисления операндов в операции
Ответ Создать тему
Опции темы

Текущее время: 19:32. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru