Qt5
注意:只有继承了QObject类的类,才具有信号槽的能力。所以,为了使用信号槽,必须继承QObject。凡是QObject类(不管是直接子类还是间接子类),都应该在第一行代码写上Q_OBJECT。不管是不是使用信号槽,都应该添加这个宏。这个宏的展开将为我们的类提供信号槽机制、国际化机制以及Qt提供的不基于C++ TRRI的反射能力。
连接到 Lambda表达式
#include <QApplication>
#include <QPushButton>
#include <QDebug>
int main(int argc, char *argv[])
{
QApplication app(argc, argv);
QPushButton button("Quit");
/**************************************************************/
QObject::connect(&button,&QPushButton::clicked,[](bool){
qDebug() << "You clicked me!";
});
/**************************************************************/
button.show();
return app.exec();
}