鉴于以下两点:
connect(ui->comboBox, SIGNAL(activated(QString)), ps, SLOT(requestPlotsAvailable(QString)));
connect(ui->comboBox, &QComboBox::activated, ps, &PlotSystem::requestPlotsAvailable);
第一个使用旧的符号,它起作用。第二个使用新的表示法并给出错误
error: no matching function for call to 'PlotSystemGui::connect(QComboBox*&, <unresolved overloaded function type>)'
如何使用新表示法避免错误?
答案 0 :(得分:9)
这应该有效
connect(ui->comboBox,
static_cast<void (QComboBox::*)(const QString &)>(&QComboBox::activated),
ps,
&PlotSystem::requestPlotsAvailable);
请参阅this关于重载函数指针的问题