Локальные переменные в Rust
Имя внутри фигурных скобок снаружи этих скобок
не существует. Команда let между
открывающей и закрывающей скобкой создает
переменную только для этого блока. После
скобки обращаться к такому имени нельзя.
Объявим число внутри блока и выведем его там же:
{
let slot = 3;
println!("{}", slot);
}
На экране 3. Следующая команда уже
вне области slot, и сборка не пройдет:
{
let slot = 3;
}
println!("{}", slot);
То же правило для ветки условия и для тела цикла: объявили внутри скобок, снаружи скобок имя пропадает.
if true {
let inner = 4;
println!("{}", inner);
}
println!("{}", inner);
Дан следующий код:
{
let step = 1;
}
println!("{}", step);
Скажите, соберется ли программа.
Скажите, где заканчивается область имени из короткого объявления внутри фигурных скобок.
Дан фрагмент:
{
let code = 7;
println!("{}", code);
}
Скажите, соберется ли программа, если после
блока вывести code.