Tour de Rust Tabla de Contenidos

El operador .

El operador . se utiliza para acceder a los campos y métodos de una referencia. Funciona de manera un poco más sutil.

let f = Foo { value: 42 };
let ref_ref_ref_f = &&&f;
println!("{}", ref_ref_ref_f.value);

¿Por qué no hace falta añadir *** antes de ref_ref_ref_f? Pues porque el operador . operator indirecciona automáticamente una secuencia de referencias. La última línea se convierte automáticamente en la siguiente por el compilador.

println!("{}", (***ref_ref_ref_f).value);