Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
CSharp Language Specification.doc
Скачиваний:
13
Добавлен:
26.09.2019
Размер:
4.75 Mб
Скачать
      1. Операторы

оператор: помеченный_оператор оператор_объявления встроенный_оператор

встроенный_оператор: блок пустой_оператор оператор_выражения оператор_выбора оператор_итерации оператор_перехода оператор_try оператор_checked опертор_unchecked оператор_lock оператор_using оператор_yield

блок: { список_операторовнеобязательно }

список_операторов: оператор_языка список_операторов оператор_языка

пустой_оператор: ;

помеченный_оператор: идентификатор : оператор

оператор_объявления: объявление_локальной_переменной ; объявление_локальной_константы ;

объявление_локальнной_переменной: тип_локальной_переменной деклараторы_локальных_переменных

тип_локальной_переменной: тип var

деклараторы_локальных_переменных: декларатор_локальной_переменной деклараторы_локальных_переменных , декларатор_локальной_переменной

декларатор_локальной_переменной: идентификатор идентификатор = инициализатор_локальной_переменной

инициализатор_локальной_переменной: выражение инициализатор_массива

объявление_локальной_константы: const тип объявления_констант

деклараторы_констант: декларатор_константы деклараторы_констант , декларатор_константы

объявление_константы: идентификатор = выражение_константы

оператор_выражения: выражение_оператора ;

выражение_оператора: выражение_вызова выражение_создания_объекта присваивание выражение_после_инкремента выражение_после_декремента выражение_до_инкремента выражение_до_декремента

оператор_выбора: оператор_if оператор_switch

оператор_if: if ( логическое_выражение ) внедренный_оператор if ( логическое_выражение ) внедренный_оператор else внедренный_оператор

оператор_switch: switch ( выражение ) блок_switch

блок_switch: { разделы_switchнеобязательно }

разделы_switch: раздел_switch разделы_switch раздел_switch

раздел_switch метки_switch список_операторов

метки_switch: метка_switch метки_switch метка_switch

метка_switch: case константное_выражение : default :

оператор_итераций: оператор_while оператор_do оператор_for оператор_foreach

оператор_while: while ( логическое_выражение ) внедренный_оператор

оператор_do: do внедренный_оператор while ( логическое_выражение ) ;

оператор_for: for ( инициализатор_forнеобязательно ; условие_forнеобязательно ; итератор_forнеобязательно ) внедренный_оператор

инициализатор_for: объявление_локальной_переменной список_выражений_оператора

условие_for: логическое выражение

итератор_for: список_выражений_операторов

список_выражений_операторов: выражение_оператора список_выражений_операторов , выражение_оператора

оператор_foreach: foreach ( тип_локальной_переменной идентификатор in выражение ) встроенный_оператор

оператор_jump: оператор_break оператор_continue оператор_goto оператор_return оператор_throw

оператор_break: break ;

оператор_continue: continue ;

оператор_goto: goto идентификатор ; goto case константное_выражение ; goto default ;

оператор_return: return выражениенеобязательно ;

оператор_throw: throw выражениенеобязательно ;

оператор_try: try блок предложения_catch try блок предложение_finally try блок предложения_catch предложение_ finally

предложения_catch: конкретные_предложения_catch общее_предложение_catchнеобязательно конкретные_предложения_catchнеобязательно общее_предложение_catch

конкретные_предложения_catch: конкретное_предложение_catch конкретные_предложения_catch конкретное_предложение_catch

конкретное_предложение_catch: catch ( тип_класса идентификаторнеобязательно ) блок

общее_предложение_catch: catch блок

предложение_finally: finally блок

оператор_checked: checked блок

оператор_unchecked: unchecked блок

оператор_lock: lock ( выражение ) внедренный_оператор

оператор_using: using ( получение_ресурса ) внедренный_оператор

получение_ресурса: объявление_локальной_переменной выражение

оператор_yield: yield return выражение ; yield break ;

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]