【发布时间】:2015-04-16 18:40:53
【问题描述】:
考虑这些类:
Class A : public QObject {
...
Q_PROPERTY(int value READ value WRITE setValue NOTIFY valueChanged)
virtual int value() { return m_value; }
void setValue(int v) { m_value = v; Q_EMIT valueChanged();}
...
};
Class B : public A {
...
int value() { return m_value * 2; }
...
};
访问属性值时,直接调用Class A的方法,而不是Class B的方法。
到目前为止,为了解决这个明显的限制,我复制了属性代码并连接了每个类的信号。
这是最好的解决方案吗?
有没有人发现潜在的问题(由于属性名称相同)?
【问题讨论】:
标签: qt polymorphism overriding qt5.4 qproperty