C2120在Qt C ++中的void插槽中使用return时

时间:2016-08-28 04:25:50

标签: c++ compiler-errors qt5

当我在Qt 5中将 return; 返回void(); 返回到C ++类的常规void方法时,它编译好了。当我将它放在 slots 方法中时,编译器会生成以下错误:

  

错误C2120:'无效'所有类型都是非法的

在此声明,可以在无效的情况下返回:Can I return in void function?

在此声明,由于插槽是普通的C ++函数,因此我可以返回值,包括void。 http://www.qtcentre.org/archive/index.php/t-26724.html

在这种情况下发布C2120的任何想法?

1 个答案:

答案 0 :(得分:0)

你只能从void函数返回void。例如:

void foo()
{
  return void();
}

否则你可以像

一样返回
void foo()
{
  return;
}

本身无效。

如该示例中所述,但您无法返回任何其他内容,这就是出现错误的原因。