Serialização em Qt
Ao usar a biblioteca Qt para programação GUI, você pode encontrar a necessidade de serializar uma grande situação de mapa de biblioteca padrão. "MyType" é uma classe com campos de diferentes tipos. Quais recursos o Qt fornece para permitir a serialização de mapeamentos?
Usando QDataStream para serialização
QDataStream pode lidar com vários tipos de dados C e Qt, incluindo contêineres STL. Uma lista detalhada dos tipos de dados suportados pode ser encontrada na documentação do Qt. Para conseguir a serialização de tipos personalizados, precisamos sobrecarregar os operadores >. A seguir está uma definição de tipo de dados personalizada que pode ser usada com QDataStream:
class Painting { public: // ... }; QDataStream &operator>(QDataStream &in, Painting &painting);
Ao sobrecarregar o operador
QDataStream &operatorAo sobrecarregar o operador >>, podemos ler dados personalizados do fluxo:
QDataStream &operator>>(QDataStream &in, Painting &painting) { // ... return in; }Ao sobrecarregar esses operadores, podemos usar tipos personalizados perfeitamente com QDataStream para obter serialização e desserialização de mapas.
Isenção de responsabilidade: Todos os recursos fornecidos são parcialmente provenientes da Internet. Se houver qualquer violação de seus direitos autorais ou outros direitos e interesses, explique os motivos detalhados e forneça prova de direitos autorais ou direitos e interesses e envie-a para o e-mail: [email protected]. Nós cuidaremos disso para você o mais rápido possível.
Copyright© 2022 湘ICP备2022001581号-3