我想将我的对象用作QVariants和排队连接。因此,我想使用Q_DECLARE_METATYPE(My_Item),从我学到的文档中我需要一个公共拷贝构造函数。我试着写一个,但我失败了。比起我读过copy constructor of derived QT class以及BЈовић的回答。从那里我明白我打算做的事情不会起作用。我该怎么办才能使我的对象可用于元类型系统?
My_Item基于My_Super_Item,如下所示:
class My_Item: public My_Super_Item {
Q_OBJECT
Q_INTERFACES(QGraphicsItem)
public:
explicit My_Item(Application *a, QString astring);
...
}
和
class My_Super_Item : public QObject, public virtual QGraphicsItem {
Q_OBJECT
Q_INTERFACES(QGraphicsItem)
public:
My_Super_Item(My_Application *a, QString astring);
...
}