Maison >développement back-end >C++ >Comment gérer les objets déplacés dans C 11 ?

Comment gérer les objets déplacés dans C 11 ?

Susan Sarandon
Susan Sarandonoriginal
2024-12-28 05:57:13164parcourir

How Do I Handle Moved-From Objects in C  11?

Gestion des objets déplacés en C 11

Comprendre le concept d'objets « déplacés de » en C 11 peut être un défi. Lorsqu’un objet est déplacé, il entre dans un état non spécifié. Cependant, la définition du type doit spécifier quelles opérations sont valides sur les objets déplacés.

Pour les types de bibliothèque standard, les objets déplacés sont placés dans un état valide mais non spécifié. Cela signifie que les conditions préalables à toute opération doivent être vérifiées avant de l'utiliser. Par exemple, une chaîne déplacée de ne peut pas être réapparue tant que la condition vide n'est pas vérifiée.

Dans les types personnalisés, le développeur est responsable de la définition de l'état des objets déplacés. Par exemple, un objet pimpl peut spécifier que s'en déplacer invalide l'opération do_stuff.

La conception du langage empêche le déplacement inattendu d'objets. Le déplacement se produit soit lorsqu'aucune autre action n'est possible sur l'objet déplacé, soit lorsque l'utilisateur demande explicitement une opération de déplacement.

Il est important de noter que les objets déplacés ne sont pas éligibles aux concepts de bibliothèque standard. Si un type ne reste pas dans un état valide (tel que défini par le concept), il ne peut pas être utilisé avec la bibliothèque standard.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn