我无法理解 Q_PROPERTY 的用法。Q_PROPERTY 如何帮助使程序具有防御性?这有什么用途?我看过论坛,但真的无法申请。我已经理解了这个例子,但不是它的用法。
这是示例,我从中获得了什么。我知道 read 将给予只读的特权。
write 属性将赋予只写权限。但它的需要是什么?有人可以举例说明吗?
class MyClass : public QObject
{
Q_OBJECT
Q_PROPERTY(Priority priority READ priority WRITE setPriority NOTIFY priorityChanged)
Q_ENUMS(Priority)
public:
MyClass(QObject *parent = 0);
~MyClass();
enum Priority { High, Low, VeryHigh, VeryLow };
void setPriority(Priority priority)
{
m_priority = priority;
emit priorityChanged(priority);
}
Priority priority() const
{ return m_priority; }
signals:
void priorityChanged(Priority);
private:
Priority m_priority;
};