我试图将一个复杂的结构(实际上是一个POD)定义为REP文件中的一个属性。在单独的头文件中,该结构已定义为Q_GADGET。 当我尝试实例化副本时,系统崩溃并抱怨 它无法创建某种类型(然后在日志中出现三个完全伪造的(例如,太高)类型ID编号)
是否可以在QT5远程对象中将结构定义为属性 世界?如果是,怎么办? 谢谢,
答案 0 :(得分:0)
看来我的“天真”运算符<<实现是错误的。我只是<<-依次将所有成员加入流中,这引起了一些问题。 但是使用
inline QDataStream& operator<<(QDataStream& stream, const my::api::User & value) {
QtRemoteObjects::copyStoredProperties(&value, stream);
return stream;
}
inline QDataStream& operator>>(QDataStream& stream, my::api::User & value) {
QtRemoteObjects::copyStoredProperties(stream, &value);
return stream;
}
“ ethalon”解决方案(由我的POD的REPC编译器生成)可以正常工作。