четверг, 30 мая 2019 г.

Спецификация Go: блоки

Блок (block) - это, возможно пустая, последовательность объявлений (declarations) и операторов (statements) в соответствующих фигурных скобках.

Block = "{" StatementList "}" .
StatementList = { Statement ";" } .

Помимо явных блоков в исходном коде, существуют неявные блоки:

  • Всеобщий блок (universe block) охватывает весь исходный текст Go кода.
  • Каждый пакет имеет блок пакета, содержащий весь исходный текст Go кода для этого пакета.
  • Каждый файл имеет блок файлов, содержащий весь исходный текст Go кода в этом файле.
  • Каждый оператор if, for и switch считается находящимся в своем неявном блоке.
  • Каждое предложение в операторе "switch" или "select" действует как неявный блок.

Блоки являются гнездом (nest) для областей видимости и влияют на области видимости.


Читайте также:


Комментариев нет:

Отправить комментарий