Rust: Documentation : différence peu claire entre les « tranches de chaîne » et les « littéraux de chaîne » pour les nouveaux arrivants

Créé le 14 nov. 2015  ·  3Commentaires  ·  Source: rust-lang/rust

Du chapitre "Strings":

Rust a deux principaux types de chaînes : &str et String . Parlons d'abord de &str . Celles-ci sont appelées « tranches de chaîne ». Les littéraux de chaîne sont du type &'static str ...

Le problème est qu'un débutant qui lit ces lignes peut conclure à tort que "tranche de chaîne" et "littéral de chaîne" signifient la même chose, et les tranches de chaîne ont toujours une durée de vie statique.

Commentaire d'un nouveau venu :

En fait, il est fait mention du fait que les tranches peuvent avoir des durées de vie différentes dans le livre. Mais du point de vue d'un débutant, il n'y a pas de différence entre "string slice" et "string literal", car ces termes sont utilisés dans le livre comme s'ils étaient synonymes . Quand je lis ces lignes, j'ai toujours pensé que ces termes signifiaient la même chose.

Commentaire le plus utile

@gandro ,

Tous les 3 commentaires

Pour être clair : un littéral de chaîne n'est qu'une tranche de chaîne qui vit pour toujours (parce que c'est un pointeur vers la rodata du binaire ou autre).

@gandro ,

Oui, toujours une bonne chose à faire! Juste une clarification pour celui qui veut arranger ça.

Cette page vous a été utile?
0 / 5 - 0 notes