我创建了一个从 QObject 继承的简单类并创建了一个信号,如下所示:
测试对象.h:
#ifndef TESTOBJECT_H
#define TESTOBJECT_H
#include <QObject>
class testObject : public QObject
{
Q_OBJECT
public:
explicit testObject(QObject *parent = 0);
signals:
somethingChanged();
public slots:
};
#endif // TESTOBJECT_H
测试对象.cpp:
#include "testobject.h"
testObject::testObject(QObject *parent) :
QObject(parent)
{
}
然后尝试制作一个在发出信号时应该停止的 QEventLoop:
testObject *foo = new testObject;
QEventLoop loop;
connect(foo, SIGNAL(somethingChanged()), loop, SLOT(quit()));
loop.exec();
但是编译器会这样抱怨:
error: no matching function for call to 'TestObjectHere::connect(objectTest&, const char*, QEventLoop&, const char*)'
我应该如何解决这个问题?