Sérialisation dans Qt
Lorsque vous utilisez la bibliothèque Qt pour la programmation GUI, vous pouvez rencontrer le besoin de sérialiser une grande situation de carte de bibliothèque standard. "MyType" est une classe avec des champs de différents types. Quelles fonctionnalités Qt fournit-il pour permettre la sérialisation des mappages ?
Utilisation de QDataStream pour la sérialisation
QDataStream peut gérer divers types de données C et Qt, y compris les conteneurs STL. Une liste détaillée des types de données pris en charge peut être trouvée dans la documentation Qt. Afin de réaliser la sérialisation des types personnalisés, nous devons surcharger les opérateurs >. Ce qui suit est une définition de type de données personnalisée qui peut être utilisée avec QDataStream :
class Painting { public: // ... }; QDataStream &operator>(QDataStream &in, Painting &painting);
En surchargeant l'opérateur
QDataStream &operatorEn surchargeant l'opérateur >>, nous pouvons lire des données personnalisées à partir du flux :
QDataStream &operator>>(QDataStream &in, Painting &painting) { // ... return in; }En surchargeant ces opérateurs, nous pouvons utiliser des types personnalisés de manière transparente avec QDataStream pour réaliser la sérialisation et la désérialisation des cartes.
Clause de non-responsabilité: Toutes les ressources fournies proviennent en partie d'Internet. En cas de violation de vos droits d'auteur ou d'autres droits et intérêts, veuillez expliquer les raisons détaillées et fournir une preuve du droit d'auteur ou des droits et intérêts, puis l'envoyer à l'adresse e-mail : [email protected]. Nous nous en occuperons pour vous dans les plus brefs délais.
Copyright© 2022 湘ICP备2022001581号-3