выражение-присваивания
список-инициализаторов , выражение-присваивания
{ список-инициализаторов , opt}
спецификация-класса:
заголовок-класса { список-членов opt}
заголовок-класса:
служебное-слово-класса идентификатор optспец-базовых opt
служебное-слово-класса имя-класса спец-базовых opt
служебное-слово-класса:
class
struct
union
список-членов:
описание-члена список-членов opt
спецификация-доступа : список-членов opt
описание-члена:
спецификации-описания optсписок-описателей-членов opt;
определение-функции ; opt
уточненное-имя ;
список-описателей-членов:
описатель-члена
список-описателей-членов , описатель-члена
описатель-члена:
описатель спецификация-чистой opt
идентификатор opt: выражение-константа
спецификация-чистой:
= 0
список-базовых:
спецификация-базовых
список-базовых , спецификация-базовых
спецификация-базовых:
полное-имя-класса
virtual спецификация-доступа optполное-имя-класса
спецификация-доступа virtual optполное-имя-класса
спецификация-доступа:
private
protected
public
имя-функции-преобразования:
operator имя-типа-преобразования
имя-типа-преобразования:
список-спецификаций-типа операция-ptr opt
инициализатор-ctor:
: список-инициализаторов-членов
список-инициализаторов-членов:
инициализатор-члена
инициализатор-члена , список-инициализаторов-члена
инициализатор-члена:
полное-имя-класса ( список-выражений opt)
идентификатор
имя-функции-оператор:
operator операция
операция : один из
new delete
+ - * / % ^& | ~
! = ‹ › += -= *= /= %=
^= &= |= ‹‹ ›› ››= ‹‹= == !=
‹= ›= && || ++ -- , -›* -›
() []
оператор:
помеченный-оператор
оператор-выражение
составной-оператор
выбирающий-оператор
оператор-цикла
оператор-перехода
оператор-описания
помеченный-оператор:
идентификатор : оператор
case выражение-константа : оператор
default : оператор
оператор-выражение:
выражение opt;
составной-оператор:
{ список-операторов opt}
список-операторов:
оператор
список-операторов оператор
выбирающий-оператор:
if ( выражение ) оператор
if ( выражение ) оператор else оператор
switch ( выражение ) оператор
оператор-цикла:
while ( выражение ) оператор
do оператор while ( выражение )
for ( оператор-иниц выражение opt; выражение opt) оператор
оператор-иниц:
оператор-выражение
оператор-описание
оператор-перехода:
break ;
continue ;
return выражение opt;
goto идентификатор ;
оператор-описания:
описание
#define идентификатор строка-лексем
#define идентификатор ( идентификатор , … , идентификатор ) строка-лексем
#include "имяфайла"
#include ‹имяфайла›
#line константа "имяфайла" opt
#undef идентификатор
условное:
часть-if части-elif optчасть-else optстрока-endif
часть-if:
строка-if текст
строка-if:
# if выражение-константа
# ifdef идентификатор
# ifndef идентификатор
части-elif:
строка-elif текст
части-elif строка-elif текст
строка-elif:
# elif выражение-константа
часть-else:
строка-else текст
строка-else:
# else
строка-endif:
# endif
описание-шаблона-типа:
template ‹ список-параметров-шаблона-типа › описание
список-параметров-шаблона-типа:
параметр-шаблона-типа
список-параметров-шаблона-типа , параметр-шаблона-типа
параметр-шаблона-типа:
параметр-типа
описание-параметра
параметр-типа:
Читать дальше