2015-09-06 93 views
-2

我想要编译其他系统上我的老Qt工程:Windows XP中,QT5,MSVC 2010QT5 MSVC 2010不承认汽车(C++ 11)

我用C++ 11 汽车在我的项目中,有一行CONFIG + = C++ 11 in pro file。

for(auto e : mapTerm->keys()) 
{ 
    mapTerm->insert(e, attrib.value(e).toString()); 
} 

现在,它不能识别汽车循环,给我的语法错误。

+0

MSVC 2010对于C++ 11来说是陈旧的。 –

+1

什么是汽车回路?一些代码会很好... – RedX

+0

通过在项目设置中选择与XP兼容的工具集,可以使用Windows XP以后的Visual C++版本(包括Visual C++ 2015)。或者,您可以使用基于Visual C++ 2010非标准范围的循环(语法与我记忆中的语法稍有不同),但我认为没有其他方法可以选择'auto'。所以你必须明确这个类型,或者使用'decltype'的Visual ++非标准替代方法。 –

回答

0

您将需要确保您使用propper C++编译器并且它是C++ 11 +。

如果您使用msvc并且使用的是正确的版本,那么这应该是内置功能。