为什么 std::for_each 不能用 minGW 编译?
Why doesn't std::for_each compile with minGW?
我正在尝试使用 QVector<double>
和 std::for_each
函数在 Qt 上使用 MinGW 编译器编译这一行。
std::for_each(data.begin(), data.end(), [max](double& n){ n/=max;});
我收到这个错误:
error: no matching function for call to 'for_each(QVector::iterator, QVector::iterator, normalize(QVector&)::)'
[max](double& n){ n/=max;});
^
它使用 MVSC2013 32 位正确编译。
我找到了解决方案。您必须使用 C++11。
已使用 C++ 11 修复。包括:CONFIG += c++11 on .pro 文件。
我正在尝试使用 QVector<double>
和 std::for_each
函数在 Qt 上使用 MinGW 编译器编译这一行。
std::for_each(data.begin(), data.end(), [max](double& n){ n/=max;});
我收到这个错误:
error: no matching function for call to 'for_each(QVector::iterator, QVector::iterator, normalize(QVector&)::)' [max](double& n){ n/=max;}); ^
它使用 MVSC2013 32 位正确编译。
我找到了解决方案。您必须使用 C++11。
已使用 C++ 11 修复。包括:CONFIG += c++11 on .pro 文件。