Serialisierung in Qt
Wenn Sie die Qt-Bibliothek für die GUI-Programmierung verwenden, müssen Sie möglicherweise eine große Standardbibliothekszuordnung serialisieren. „MyType“ ist eine Klasse mit Feldern unterschiedlichen Typs. Welche Funktionen bietet Qt, um die Serialisierung von Zuordnungen zu ermöglichen?
QDataStream für die Serialisierung verwenden
QDataStream kann verschiedene C- und Qt-Datentypen verarbeiten, einschließlich STL-Container. Eine detaillierte Liste der unterstützten Datentypen finden Sie in der Qt-Dokumentation. Um eine Serialisierung benutzerdefinierter Typen zu erreichen, müssen wir die Operatoren > überladen. Das Folgende ist eine benutzerdefinierte Datentypdefinition, die mit QDataStream verwendet werden kann:
class Painting { public: // ... }; QDataStream &operator>(QDataStream &in, Painting &painting);
Durch Überladen des
QDataStream &operatorDurch Überladen des >>-Operators können wir benutzerdefinierte Daten aus dem Stream lesen:
QDataStream &operator>>(QDataStream &in, Painting &painting) { // ... return in; }Durch Überladen dieser Operatoren können wir benutzerdefinierte Typen nahtlos mit QDataStream verwenden, um eine Serialisierung und Deserialisierung von Karten zu erreichen.
Haftungsausschluss: Alle bereitgestellten Ressourcen stammen teilweise aus dem Internet. Wenn eine Verletzung Ihres Urheberrechts oder anderer Rechte und Interessen vorliegt, erläutern Sie bitte die detaillierten Gründe und legen Sie einen Nachweis des Urheberrechts oder Ihrer Rechte und Interessen vor und senden Sie ihn dann an die E-Mail-Adresse: [email protected] Wir werden die Angelegenheit so schnell wie möglich für Sie erledigen.
Copyright© 2022 湘ICP备2022001581号-3