当前位置: 技术问答>linux和unix
为什么Qt中定义的类看上去怪怪的
来源: 互联网 发布时间:2015-04-16
本文导语: 比如 class Counter : public QObject { Q_OBJECT public: .... public slots: void countUp(); signals: void PrintMessage(const char*); } 这样一个定义,有这几个问题看不懂 1.平白无故摆出一个Q_OBJECT是什么意思 2.public slots:申明是什么意思...
比如
class Counter : public QObject
{
Q_OBJECT
public:
....
public slots:
void countUp();
signals:
void PrintMessage(const char*);
}
这样一个定义,有这几个问题看不懂
1.平白无故摆出一个Q_OBJECT是什么意思
2.public slots:申明是什么意思
3.signals:是什么意思
class Counter : public QObject
{
Q_OBJECT
public:
....
public slots:
void countUp();
signals:
void PrintMessage(const char*);
}
这样一个定义,有这几个问题看不懂
1.平白无故摆出一个Q_OBJECT是什么意思
2.public slots:申明是什么意思
3.signals:是什么意思
|
Qt的基本功能之一,参考其白皮书:
http://www.trolltech.com/products/qt/whitepaper/qt-whitepaper-3.html
http://www.trolltech.com/products/qt/whitepaper/qt-whitepaper-3.html
|
to:icedust(冰封尘想),Q_OBJECT这个宏和继承没有什么关系,其作用只是告诉QT的“编译”器,在这个类中使用了signal,和slots,Qt的“编译”器就可以把以后声明的signal,和slots翻译成标准的C++类。
|
只要是从QObject继承的都需要这个宏的
slots声明这个函数为槽
signal声明这个函数为信号
qt中,槽和信号是个重要机制
slots声明这个函数为槽
signal声明这个函数为信号
qt中,槽和信号是个重要机制
|
楼上几个说的都对,QT的特点就是基于信号(signal)和槽(slots)通信。
|
楼上说的对。
您可能感兴趣的文章:
本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。
本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。