使用qt将自定义类写入文件的最佳方法

时间:2013-01-17 09:25:25

标签: qt serialization qfile qiodevice

嘿所有(在那里:) 哪种方式最适合在Qt中将自定义类写入文件?
提前谢谢。
的Matthias

1 个答案:

答案 0 :(得分:5)

编辑:问题已被提出。 Serialization with Qt

最好的方法是使用QDataStream序列化。对于给定的类MyClass,您需要定义新的流运算符

QDataStream &operator<<(QDataStream &, const MyClass &);
QDataStream &operator>>(QDataStream &, MyClass &);

QDataStream已经能够编写几个Qt类,主要是集合和其他类似于QImage等等的类。注意,你不能序列化QObject的任何子类。有理由:),但是你要限制QObject本身既不提供拷贝构造函数也不提供像上面那样的\ out流函数的解释。

请注意,如果您的自定义类派生一个已经提供序列化的类,则需要调用此超类的流运算符(与构造子类时调用超类的构造函数的原理相同)。