QT5 RemoteObjects Q_GADGET как PROP - PullRequest
       32

QT5 RemoteObjects Q_GADGET как PROP

0 голосов
/ 10 октября 2018

Я пытаюсь определить сложную структуру (практически POD) как свойство в файле REP.Структура уже определена как Q_GADGET в отдельном заголовочном файле.Когда я пытаюсь создать экземпляр реплики, происходит сбой системы с жалобой на то, что она не может создать определенный тип (и в журнале появляются три полностью поддельных (например, слишком высоких) номера идентификатора типа)

Можно ли определитьструктуры как свойства в мире удаленных объектов QT5?Если да, то как?Спасибо,

1 Ответ

0 голосов
/ 10 октября 2018

Похоже, мой "наивный" оператор << реализация была неправильной.Я просто << - вывел всех участников одного за другим в поток, что вызвало некоторые проблемы.Однако использование решения </p>

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" (созданного компилятором REPC для POD) работает просто отлично.

...