Avatar ·

Conversion de Option<String> en Option<&str> en Rust : comment faire correctement ?

Bonjour à tous ! Je viens de commencer à apprendre Rust et j'ai rencontré un problème de conversion de types. J'ai une fonction qui retourne `Option`, mais je dois passer son résultat à une autre fonction qui attend `Option<&str>`. Voici un exemple simplifié : ```rust fn get_name() -> Option { Some("Alice".to_string()) } fn print_name(name: Option<&str>) { match name { Some(n) => println!("Hello, {}", n), None => println!("No name provided"), } } fn main() { let name = get_name(); // Comment passer name à print_name ? print_name(name); // Erreur de compilation ! } ``` Le compilateur donne l'erreur : `expected Option<&str>, found Option`. Je comprends que `String` et `&str` sont des types différents, mais comment convertir correctement `Option