为什么 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 文件。