将具有6个参数或更多参数的函数传递给QtConcurrent::run()
时出现编译错误。当我将它们减少到5个参数时,我不会再遇到这个错误。QtConcurrent :: run()不能处理超过5个参数?
这个虚拟的代码重现错误对我来说:
void foo(int, int, int, int, int, int)
{
}
QtConcurrent::run(foo, 1, 2, 3, 4, 5, 6);
编译器错误是:
error: no matching function for call to 'run(void (&)(int, int, int, int, int, int), int, int, int, int, int, int)'
难道这应该是这样的吗?最多是否限制了5个参数QtConcurrent::run()
?
如果它有限,它不会让我感到惊讶。毕竟,它必须与预C++ 11编译器一起工作。 – Angew