Vecteurs et chaînes de caractères
Vecteurs | Chaînes de caractères | |
---|---|---|
Type pour la grosse structure où on peut changer la taille | Vec<T> | String |
Type vue mémoire (taille, pointeur) | slice<T> | str |
str
#![allow(unused)] fn main() { let x: &str = "Bonjour"; println!("{}", s); }
Attention, on ne peut pas écrire *s
car *s
n'a pas de taille connue à la compilation (à la compilation on ne sait pas sur combien de caractères le pointeur pointe).
String
- Pour transformer une
str
enString
:String::from
- Pour avoir la
str
totale d'unString
: on déréférence !
#![allow(unused)] fn main() { let x: &str = "Bonjour"; let s: String = String::from(x); let y: &str = &s; println!("{}", s); }