我想讓一個類暴露一個QObject派生類(具有它自己的qt屬性)qt屬性我可以在qml中使用的集合(或幾個)。一個對象擁有一個QObject派生類的集合的正確方法是什麼?
根據http://qt-project.org/doc/qt-5.0/qtcore/qobject.html#no-copy-constructor-or-assignment-operator qt與複製構造函數不兼容。
所以我用QList<QObject derived class>
(我的第一個想法)我無法通過引用來傳遞列表(或者至少我認爲這就是編譯器錯誤所暗示的)(需要副本),並且很難弄清楚如何添加項目到名單。
我應該使用QList<QObject derived class *>
還是QList<SomeQTSmartPointer<QObject derived class>>
或其他?
只要確保你沒有做QSharedPointer(新的MyClass(父)),或者你會得到一個雙刪除。 –