Справочное руководство по C++

R.17.2 Выражения.

Выражение:

 выражение-присваивания.

 выражение , выражение-присваивания.

Выражение-присваивания:

 выражение-условия.

 унарное-выражение операция-присваивания выражение-присваивания.

Операция-присваивания: один из.

 = *= /= %= += -= ››= ‹‹= &= ^= |=

Выражение-условия:

 логическое-выражение-ИЛИ.

 логическое-выражение-ИЛИ ? выражение : выражение-условия.

Логическое-выражение-ИЛИ:

 логическое-выражение-И.

 логическое-выражение-ИЛИ || логическое-выражение-И.

Логическое-выражение-И:

 выражение-ИЛИ.

 логическое-выражение-И && выражение-ИЛИ.

Выражение-ИЛИ:

 выражение-исключающего-ИЛИ.

 выражение-ИЛИ | выражение-исключающего-ИЛИ.

Выражение-исключающего-ИЛИ:

 выражение-И.

 выражение-исключающего-ИЛИ ^ выражение-И.

Выражение-И:

 выражение-равенства.

 выражение-И & выражение-равенства.

Выражение-равенства:

 выражение-отношения.

 выражение-равенства == выражение-отношения.

 выражение-равенства != выражение-отношения.

Выражение-отношения:

 сдвиговое-выражение.

 выражение-отношения ‹ сдвиговое-выражение.

 выражение-отношения › сдвиговое-выражение.

 выражение-отношения ‹= сдвиговое-выражение.

 выражение-отношения ›= сдвиговое-выражение.

Сдвиговое-выражение:

 аддитивное-выражение.

 сдвиговое-выражение ‹‹ аддитивное выражение.

 сдвиговое-выражение ›› аддитивное выражение.

Аддитивное-выражение:

 мультипликативное-выражение.

 аддитивное выражение + мультипликативное-выражение.

 аддитивное-выражение - мультипликативное-выражение.

Мультипликативное-выражение:

 выражение-pm.

 мультипликативное-выражение * выражение-pm.

 мультипликативное-выражение / выражение-pm.

 мультипликативное-выражение % выражение-pm.

Выражение-pm:

 выражение-приведения.

 выражение-pm .* выражение-приведения.

 выражение-pm -›* выражение-приведения.

Выражение-приведения:

 унарное-выражение.

 ( имя-типа ) выражение-приведения.

Унарное-выражение:

 постфиксное-выражение.

 ++ унарное выражение.

 -- унарное выражение.

 унарная-операция выражение-приведения.

 sizeof унарная-операция.

 sizeof ( имя-типа ).

 выражение-размещения.

 выражение-освобождения.

Унарная-операция: один из.

 * & + - ! ~

 выражение-размещения:

 :: opt new параметры-new opt имя-типа-new инициализатор-new.

 :: opt new параметры-new opt ( имя-типа ) инициализатор-new.

Параметры-new:

 ( список-выражений ).

Имя-типа-new:

 список-спецификаций-типа описатель-new opt.

Описатель-new:

 * список-спецификаций-cv opt описатель-new opt.

 имя-класса :: список-спецификаций-cv opt описатель-new opt.

 описатель-new opt [ выражение ].

Инициализатор-new:

 ( список-инициализаторов opt )

Выражение-освобождения:

 :: opt delete выражение-приведения.

 :: opt delete [ ] выражение-приведения.

Постфиксное-выражение:

 первичное-выражение.

 постфиксное-выражение [ выражение ].

 постфиксное-выражение ( список-выражений opt )

 имя-простого-типа ( список-выражений opt )

 постфиксное-выражение . имя.

 постфиксное-выражение -› имя.

 постфиксное-выражение ++

 постфиксное-выражение --

Список-выражений:

 выражение-присваивания.

 список-выражений , выражение-присваивания.

Первичное-выражение:

 литерал.

 this.

 :: идентификатор.

 :: имя-функции-операции.

 :: уточненное-имя.

 ( выражение ).

 имя.

Имя:

 идентификатор.

 имя-функции-операции.

 имя-функции-преобразования.

 ~имя-класса.

 уточненное-имя.

Уточненное-имя:

 уточняющее-имя-класса :: имя.

Литерал:

 целая константа.

 символьная константа.

 константа с плавающей точкой.

 строка литералов.