Prendre possession avec owned
Transférez une valeur à une fonction.
Prendre possession avec owned est une leçon Mojo Academy gratuite sur CoddyKit. Ceci est la leçon 3 sur 4. Tu peux lire la leçon complète ci-dessous gratuitement — puis la pratiquer en direct dans le navigateur avec un éditeur de code intégré et un tuteur IA 24/7. Elle fait partie du parcours d'apprentissage Mojo Academy, et ta progression se synchronise sur le web et l'application CoddyKit. Le cours Mojo Academy comprend 4 leçons au total.
Une troisième façon de transmettre une valeur
Vous avez vu borrowed pour lire et inout pour modifier. La troisième convention permet à une fonction de prendre entièrement en charge une valeur. 📦
Découvrez owned
Un argument owned transfère sa propriété à la fonction. La fonction détient alors la valeur comme si elle lui appartenait, pour l’utiliser ou la stocker.
Marquer le paramètre
Vous écrivez owned avant le nom du paramètre. À l’intérieur de la fonction, vous disposez d’un contrôle total : vous pouvez modifier, stocker ou consommer la valeur.
fn consume(owned name: String):
print(name)La fonction devient propriétaire
Avec owned, la durée de vie de la valeur se déplace dans la fonction. Lorsque celle-ci se termine, c’est à elle de détruire la valeur.
Pourquoi prendre la propriété ?
Utilisez owned lorsqu’une fonction doit conserver la valeur, par exemple pour la stocker dans une structure ou une collection, plutôt que de simplement la lire brièvement.
Owned permet aussi la modification
Puisque la fonction est propriétaire de la valeur, elle peut librement la modifier. Il n’y a plus d’appelant à protéger, car la valeur appartient désormais à la fonction.
Comment la valeur arrive
Par défaut, Mojo fournit au paramètre owned une copie distincte, de sorte que l’original de l’appelant reste intact, sauf si vous demandez un déplacement.
Éviter la copie
Si vous n’avez plus besoin de l’original, vous pouvez transmettre directement la valeur plutôt que de la copier. Ce transfert est le sujet de la prochaine leçon.
Une intention claire
Choisir owned indique aux lecteurs que cette fonction va conserver la valeur. La signature décrit en un coup d’œil le parcours des données.
Les trois conventions
Vous disposez maintenant des trois conventions : borrowed lit, inout modifie sur place et owned prend entièrement la valeur. Chacune correspond à une intention claire.
Choisir selon la responsabilité
Demandez-vous qui doit être responsable de la valeur après l’appel. Si la réponse est la fonction, choisissez owned.
Vérification rapide
Vérifions ce que owned signifie pour une fonction.
Récapitulatif
owned transfère la propriété d’une valeur à la fonction, qui peut la conserver, la modifier ou la détruire. Utilisez-le lorsque la fonction doit posséder les données. 🎯
Apprends Mojo avec un tuteur IA — gratuit
Écris et exécute du vrai code dans ton navigateur, obtiens de l'aide instantanée d'un tuteur IA disponible 24h/24, et reprends là où tu t'es arrêté sur le web ou dans l'app.
- Cours
- 30
- Leçons
- 120
Questions Fréquemment Posées
La leçon « Prendre possession avec owned » est-elle gratuite ?
Oui — le texte complet de « Prendre possession avec owned » est gratuit à lire ici sur le web. Pour la pratiquer de manière interactive (un éditeur de code intégré et un tuteur IA 24/7) et déverrouiller le reste du cours Mojo Academy, passe à CoddyKit PRO. Le cours Mojo Academy comprend 4 leçons au total.
Qu'est-ce que j'apprendrai dans « Prendre possession avec owned » ?
Transférez une valeur à une fonction. Tu pratiques Mojo Academy avec du code pratique que tu exécutes directement dans le navigateur, et un tuteur IA 24/7 répond à tes questions au fur et à mesure que tu avances dans la leçon.
Dois-je avoir de l'expérience pour commencer Mojo Academy ?
Aucune expérience préalable n'est requise. Mojo Academy sur CoddyKit est structuré pour les débutants jusqu'aux apprenants avancés, donc tu peux commencer ici ou depuis le début et avancer à ton rythme. Ceci est la leçon 3 sur 4.
Combien de temps prend la leçon « Prendre possession avec owned » ?
La plupart des leçons CoddyKit prennent environ 5–10 minutes. Chacune est courte et interactive, tu progresses régulièrement et tu repiques exactement où tu t'es arrêté sur le web et l'app.
Peux-tu écrire et exécuter du code dans cette leçon Mojo Academy ?
Oui. Chaque leçon Mojo Academy inclut un éditeur de code intégré, tu écris et exécutes du vrai code directement dans ton navigateur et tu reçois des retours IA instantanés — aucune configuration locale requise.
Toutes les leçons de ce cours
- Emprunter des arguments en lecture seule
- Modifier sur place avec inout
- Prendre possession avec owned
- L’opérateur de transfert