我有一段带有lambda函数的代码:
QMenu menu(this);
menu.addAction("Set file", this, [this, i](){this->setFile(i);});
其中setFile(int i)
是MyMainWindow
类中定义的void方法。
在使用MSVC2015进行编译时有效,但不能用gcc 4:4.9.2-2进行编译,这会产生此错误:
错误:没有匹配函数来调用'QMenu :: addAction(const char [6],MyMainWindow *,MyMainWindow :: eventFilter(QObject *, QEvent的*)::)” menu.addAction(“设置文件”,这个,这个,我{this-> setFile(i);});
我的qmake文件包含:
CONFIG += c++11
我也尝试过添加:
QMAKE_CXXFLAGS += -std=c++11
但这并没有解决问题。我该如何编译这段代码?