我正在尝试使用此声明。我在VS2012中使用QT 5.1
connect(ui.pushButton_next, SIGNAL(clicked()), []{
std::cout << "clicked" << std::endl;
});
我得到了
错误C2664:'QMetaObject :: Connection QObject :: connect(const QObject *,const char *,const char *,Qt :: ConnectionType)const':无法转换参数3 'newAccount :: {ctor} ::'to 'const char *'1&gt;没有用户定义的转换运算符 可以执行此转换,或运营商不能 称为
有关我可能做错的任何建议吗?
答案 0 :(得分:4)
Looking at the documentation,支持SIGNAL和SLOT宏的connect方法的重载似乎不会引入Functor对象 - 只有this overload支持PointerToMemberFunction。
您的代码的正确语法是:
connect(ui.pushButton_next, &QObject::clicked, []{
std::cout << "clicked" << std::endl;
});