Como C++, Rust tiene referencias:
fn main() {
let mut x: i32 = 10;
let ref_x: &mut i32 = &mut x;
*ref_x = 20;
println!("x: {x}");
}
Debemos desreferenciar ref_x al asignarleun valor, de forma similar a los punteros de C y C++.
Rust eliminará automáticamente la referencia en algunos casos, en particular al invocar métodos.
Las referencias que se declaran como mut se pueden vincular a diferentes valores durante su vida útil.
Asegúrese de notar la diferencia entre let mut ref_x: &i32 y let ref_x: &mut i32. El primero representa una referencia mutable que se puede vincular a diferentes valores, mientras que el segundo representa una referencia a un valor mutable.