相关疑难解决方法(0)

C++ Qt反射与复制和分配

由于QObject文档和许多其他人解释,一个QObject有身份,从而隐藏了它的拷贝构造函数和赋值操作符.

但是,我并非源于QObject其动态属性功能或信号/插槽功能.我只想要反思或访问的能力Foo::staticMetaObject.

class Foo : public QObject {
    Q_OBJECT
    Q_ENUMS(Color)
public:
    enum Color { Blue, Red, Pink };
private:
    Color color;
};

Q_DECLARE_METATYPE(Foo::Color)
Run Code Online (Sandbox Code Playgroud)

然后,我无法复制Foo:

Foo a;
Foo b;
a = b;
Run Code Online (Sandbox Code Playgroud)

在这种情况下,允许复制和分配的最佳方法是什么?我是否绝对需要编写复制构造函数和赋值运算符?他们会是什么样子?反思仍然有效吗?

c++ qt copy-constructor assignment-operator qobject

6
推荐指数
1
解决办法
3482
查看次数

标签 统计

assignment-operator ×1

c++ ×1

copy-constructor ×1

qobject ×1

qt ×1