Нужно возвращать std::unique_ptr<QJsonObject> а я возвращаю QJsonObject, что делать?

180
28 июля 2018, 07:20

Как исправить ошибку? У меня есть функция

 std::unique_ptr<QJsonObject> Archiver::serialise(const Component* component)
 {
    JSONVisitor visitor;
    component->visit(&visitor);
    return visitor.jsonData();
 }

visitor.jsonData(); - это просто QJsonObject

И выдает ошибку

  'return': cannot convert from 'const QJsonObject' to
  'std::unique_ptr<QJsonObject,std::default_delete<_Ty>>

И я нек знаю как это исправить

Answer 1
return std::make_unique<QJsonObject>(visitor.jsonData())
READ ALSO
Вызов функций c++ из qml

Вызов функций c++ из qml

Подскажите что делаю не такНаписал простую функцию которую хочу вызвать в qml

227
Как запустить QTimer в QtConcurrent::run

Как запустить QTimer в QtConcurrent::run

Kак запустить запустить QTimer в QtConcurrent::run?

182
Приложение падает на вызове DeviceIoControl

Приложение падает на вызове DeviceIoControl

Необходимо получить смещение разделов жёсткого дискаЯ делаю это следующим образом:

203
Как работает валидатор ввода в данном методе?

Как работает валидатор ввода в данном методе?

Пытаюсь понять, как работает данное решение с валидатором (вложенный в 'do' while)Никак не могу понять порядок исполнения кода

202