Re[6]: sequence point (по мотивам инкремента)
От: itman itman.livejournal.com
Дата: 04.06.04 08:23
Оценка:
Господа, вы в дискуссии о разнице между UB и UB!!! отошли от самого главного, а именно от того, определен ли
порядок вызовов функции f в коде
cout<<f(i++)<<f(i++).
мне кажется, что этот код эквивалентен
( cout.operator <<(f(i++)) ).operator <<(f(i++))
Второй вызов функции f может произойти только после того, как создастся временный объект. Где здесь может возникнуть неопределенность?
В свою очередь инкремент переменной i будет происходить дважды и опять-таки после вывода f(i) в поток вывода. пардон за каламбур, но пред очередным вызовом функции.
Если я что-то неправильно написал, просьба меня поправить
Внесены исправления автора — ПК
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.