Además de la capacidad de crear referencias de tipos de datos existentes utilizando el operador &
operator, Rust nos permite crear estructuras de referencia llamadas punteros inteligentes.
Podemos pensar en referencias a alto nivel como un tipo que nos da acceso a otro tipo. Los punteros inteligentes se diferencian en su comportamiento de las referencias normales en que operan basados en la lógica interna que el programador (o sea, tú) escribe al ser la parte inteligente.
Los punteros inteligentes implementan de forma típica los traits Deref
, DerefMut
y Drop
para especificar la lógica de lo que debe suceder cuando la estructura se indirecciona con los operadores *
y .
.