Blocos
Um bloco em Rust contĂȘm uma sequĂȘncia de expressĂ”es. Cada bloco tem um valor e um tipo, os quais sĂŁo os da Ășltima expressĂŁo do bloco:
fn main() { let x = { let y = 10; println!("y: {y}"); let z = { let w = { 3 + 4 }; println!("w: {w}"); y * w }; println!("z: {z}"); z - y }; println!("x: {x}"); }
Se a Ășltima expressĂŁo terminar com ;
, o valor resultante e o tipo serĂĄ ()
.
A mesma regra é usada para funçÔes: o valor do corpo da função é o valor de retorno:
fn double(x: i32) -> i32 { x + x } fn main() { println!("dobrado: {}", double(7)); }
Pontos Chave:
- O objetivo deste slide Ă© mostrar que os blocos tĂȘm um tipo e um valor em Rust.
- VocĂȘ pode mostrar como o valor do bloco muda alterando a Ășltima linha do bloco. Por exemplo, adicionar/remover um ponto e vĂrgula (
;
) ou usar umreturn
.