Serialización en Qt
Cuando utilice la biblioteca Qt para la programación GUI, puede encontrar la necesidad de serializar una situación de mapa de biblioteca estándar grande. "MyType" es una clase con campos de diferentes tipos. ¿Qué características proporciona Qt para permitir la serialización de asignaciones?
Uso de QDataStream para serialización
QDataStream puede manejar varios tipos de datos C y Qt, incluidos contenedores STL. Puede encontrar una lista detallada de los tipos de datos admitidos en la documentación de Qt. Para lograr la serialización de tipos personalizados, necesitamos sobrecargar los operadores >. La siguiente es una definición de tipo de datos personalizada que se puede utilizar con QDataStream:
class Painting { public: // ... }; QDataStream &operator>(QDataStream &in, Painting &painting);
Al sobrecargar el operador
QDataStream &operatorAl sobrecargar el operador >>, podemos leer datos personalizados de la secuencia:
QDataStream &operator>>(QDataStream &in, Painting &painting) { // ... return in; }Al sobrecargar estos operadores, podemos usar tipos personalizados sin problemas con QDataStream para lograr la serialización y deserialización de mapas.
Descargo de responsabilidad: Todos los recursos proporcionados provienen en parte de Internet. Si existe alguna infracción de sus derechos de autor u otros derechos e intereses, explique los motivos detallados y proporcione pruebas de los derechos de autor o derechos e intereses y luego envíelos al correo electrónico: [email protected]. Lo manejaremos por usted lo antes posible.
Copyright© 2022 湘ICP备2022001581号-3