Comment créer une Rouille struct avec de la ficelle membres?
Je veux les membres à être détenue par la structure. Désolé pour la question simple, mais je n'ai pas pu trouver un exemple. Je suis à la recherche de la bonne déclaration d'une structure et d'instanciation des exemples.
- Utilisation
String
et être conscient que la création d'unString
de&str
via.to_string()
implique un tas de répartition de + la copie de l'ensemble de la chaîne.
Vous devez vous connecter pour publier un commentaire.
Si la chaîne doit être détenue par la structure, alors vous devriez utiliser
String
. Sinon, vous pouvez utiliser un&str
avec un statique de la durée de vie (c'est à dire, la durée de vie du programme). Par exemple:Si la durée de vie de la chaîne est inconnu, vous pouvez paramétrer
Foo
avec une durée de vie:Voir aussi:
Si vous n'êtes pas sûr de savoir si la chaîne ne peut être détenu ou pas (utile pour éviter les allocations), alors vous pouvez utiliser
emprunter::Vache
:Noter que le
Cow
type est paramétré sur une durée de vie. La durée de vie fait référence à la durée de vie de la emprunté chaîne (c'est à dire, quand c'est unBorrowed
). Si vous avez unCow
, alors vous pouvez utiliserborrow
et d'obtenir un&'a str
, avec lequel vous pouvez faire des opérations de la chaîne sans se soucier de savoir si d'allouer une nouvelle chaîne ou pas. Généralement, explicite appel deborrow
n'est pas nécessaire en raison de deref forçages. À savoir,Cow
valeurs de déréférencement à leur emprunté formulaire automatiquement,&*val
oùval
a typeCow<'a, str>
va produire un&str
.