Q_CLASSINFO(类的附加信息)
Q_PROPERTY(类的属性)
这里的MEMBER关键字用来绑定QT类的属性和成员变量,示例如下
绑定了成员变量后就不必绑定写和读的函数
class QPerson : public QObject
{
Q_OBJECT
Q_CLASSINFO("author", "yan") // 定义QPerson这个类的附加信息(名称, 值)
Q_CLASSINFO("company", "NJUST")
Q_CLASSINFO("version", "1.0.0")
Q_PROPERTY(int age READ age WRITE setAge NOTIFY ageChanged) // 定义QPerson这个类的属性
Q_PROPERTY(QString name MEMBER m_name)
Q_PROPERTY(int score MEMBER m_score)
private:
int m_age = 10;
QString m_name;
int m_score = 79;
public:
explicit QPerson(QObject *parent = nullptr);
int age();
void setAge(int value);
void incAge();
signals:
agechanged(int value);