Types copiables

Si memcpy() crée une copie indépendante (ex : types primitifs), le use-after-move est en fait OK.

On peut donc, dans ce cas, autoriser la réutilisation de l’original :

#![allow(unused)]
fn main() {
// Définition d'une valeur copiable (tableau de flottants)
let numbers = [1.2, 3.4, 5.6];

// Utilisation du tableau => Copie
for x in numbers {
    println!("{x}");
}

// Réutilisation après copie => OK !
println!("{numbers:?}");
}

Les copies non triviales nécessitent un clone() explicite : audit des performances facilité !