このクラスがあるとしましょう:
class Bear
{
public:
Bear ();
Bear (Bear &other);
// ... methods
private:
BearInfo* m_pInfo;
};
Bear
オブジェクトをQList<Bear>
by valueに格納できますか? ドキュメントによると:
内部的に
QList<T>
は、 type の項目へのポインターの配列として表されますT
。それT
自体がポインター型またはポインター以下の基本型である場合、またはT
Qt の共有クラスの 1 つである場合はQList<T>
、アイテムをポインター配列に直接格納します。
私のクラスはポインターだけで構成されていますが、それはポインター型でも基本型QList
でもないため、ポインター ( ) を格納するように見えますがBear*
、これは私が望んでいるものではありません。また、構造は変更可能でなければならないため、 からBearInfo
派生することはできません。Bear
QSharedDataPointer
このクラスをQt コレクションに値で格納できるようにする方法について何か提案はありますか?