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
strenString:String::from - Pour avoir la
strtotale 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); }