Следите за новинками
в нашем Telegram канале. Жми, чтобы подписаться:)
⊗rsPmScBl 292 of 373 menu
◀ ▶

Блок и область видимости в Rust

Отдельные фигурные скобки внутри функции создают свою область. Имя из объявления let внутри такого блока видно только между открывающей и закрывающей скобкой. После скобки обращаться к нему нельзя.

Объявим число внутри простого блока и выведем его там же:

{ let slot = 3; println!("{}", slot); }

На экране 3. Следующая команда уже вне области slot:

{ let slot = 3; } println!("{}", slot);

Вложенные блоки работают так же. Внутренний блок может читать имя из внешнего блока той же функции, пока внутри не появилась тень:

let base = 1; { println!("{}", base); { let inner = 2; println!("{}", inner); } }

Дан следующий код:

{ let key = 8; } println!("{}", key);

Скажите, соберется ли программа.

Дана переменная:

let outer = 4;

Внутри блока без условия выведите outer. Скажите, почему это допустимо.

Дан следующий код:

{ { let v = 1; } println!("{}", v); }

Скажите, соберется ли программа.

← →
↑
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить