Qt开始1 Q_OBJECT宏简易化解释

Qt开始

Q_OBJECT是一个宏,那些类需要定义信号(signals)和槽(slots)添加Q_OBJECT宏,进行调用 Qt元对象系统(meta-object system)其他服务。

Eg

#include <QObject>


class Counter : public QObject

{

    Q_OBJECT

 

public:

    Counter() { m_value = 0; }

 

    int value() const { return m_value; }

 

public slots:

    void setValue(int value);

 

signals:

    void valueChanged(int newValue);

 

private:

    int m_value;

};(注释:例子来自Qt帮助文件)

 

Qt元对象系统(meta-object system)简单说就是Qt中提供信号和槽的系统。

在类中带有Q_OBJECT宏就是告诉编译这些类都具有元对象的特征,然后你们这些类都能调用元对象中的服务,再简单说类似于#include 这个元对象系统的文件,只是包含在有Q_OBJECT 类中使用而已。

希望对初学Qt者有所帮助

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值