Re[5]: sequence point (по мотивам инкремента)
От: dupamid Россия  
Дата: 04.06.04 08:14
Оценка:
Здравствуйте, Аноним, Вы писали:

D>>>>Точки следования в операторе запятая нет, но есть гарантированный порядок вычисления.


А>>>Вот это новость!..


D>>По С++'04 нет:


А>Просветите, пожалуйста, что такое С++'04. Уже принят TC2?


Это рабочий драфт Стандарта на 15 январа 2004 (есть апрельский, но его надо искать). Но ни в официально версии стандарта С++'03 ни в драфте это место не менялось с С++'89.

D>>5.18 Comma operator


А>А какова теперь редакция 1.9/18?


Редакция осталась без изменений:
1.9\18 In the evaluation of each of the expressions
a && b
a || b
a ? b : c
a , b
using the built-in meaning of the operators in these expressions (5.14, 5.15, 5.16, 5.18), there is a sequence point after the evaluation of the first expression 12).

12) The operators indicated in this paragraph are the built-in operators, as described in clause 5. When one of these operators is overloaded (clause 13) in a valid context, thus designating a user-defined operator function, the expression designates a function invocation, and the operands form an argument list, without an implied sequence point between them.


Это слегка противоречит тому, что написано в 5.18...
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.