【发布时间】:2015-08-28 17:37:08
【问题描述】:
我正在尝试使用新的信号和槽语法,但在连接函数时出现编译错误。在这种情况下如何使用新语法?
// Qt 5.4.1, Apple LLVM version 6.1.0 and qmake 3.0
private slots:
void onError(QSerialPort::SerialPortError code);
private:
QSerialPort *m_port;
Link::Link(QObject *parent) : QObject(parent) {
m_port = new QSerialPort(parent);
connect(m_port, &QSerialPort::error, this, &Link::onError);
}
完整的错误信息:
error: no matching member function for call to 'connect'
connect(m_port, &QSerialPort::error, this, &Link::onError);
^~~~~~~
candidate function not viable: no overload of 'error' matching 'const char *' for 2nd argument
static QMetaObject::Connection connect(const QObject *sender, const char *signal,
^
【问题讨论】:
-
究竟是什么版本的 Qt 和编译器以及您使用的是什么平台?
-
我使用的是 Qt 5.4.1 和 Apple LLVM 版本 6.1.0 @MichaelBurr
标签: c++ qt qt5 qtserialport