C++ `#包括<;iostream>;`用“-std=c++;0x`坏了
如果我将C++ `#包括<;iostream>;`用“-std=c++;0x`坏了,c++,qt,qt4,g++,c++11,C++,Qt,Qt4,G++,C++11,如果我将-std=c++0x指定给g++,那么我就不能#include。我收到以下错误消息(mingw下的g++4.4.0): 你知道为什么吗?这在最新的g++中已经修复了吗?(如果是这样的话,有人知道如何将最新的g++集成到Qt中吗?这似乎是一个问题。有一个简单的补丁(在最后)
-std=c++0x
指定给g++,那么我就不能#include
。我收到以下错误消息(mingw下的g++4.4.0):
你知道为什么吗?这在最新的g++中已经修复了吗?(如果是这样的话,有人知道如何将最新的g++集成到Qt中吗?这似乎是一个问题。有一个简单的补丁(在最后)如果你删除了-STD= C++ +0x,编译器会告诉你什么?这看起来像是MinGW C++库/头中的一个错误,而不是在G++中。@西蒙尼:没有STD= C++ +0x,我没有问题。看看它是否适用:谢谢!成功了。(您可能需要将答案中的“路径”编辑为“补丁”。)
In file included from c:\qt\2010.05\mingw\bin\../lib/gcc/mingw32/4.4.0/include/c++/bits/postypes.h:42,
from c:\qt\2010.05\mingw\bin\../lib/gcc/mingw32/4.4.0/include/c++/iosfwd:42,
from c:\qt\2010.05\mingw\bin\../lib/gcc/mingw32/4.4.0/include/c++/ios:39,
from c:\qt\2010.05\mingw\bin\../lib/gcc/mingw32/4.4.0/include/c++/ostream:40,
from c:\qt\2010.05\mingw\bin\../lib/gcc/mingw32/4.4.0/include/c++/iostream:40,
from f.cpp:1:
c:\qt\2010.05\mingw\bin\../lib/gcc/mingw32/4.4.0/include/c++/cwchar:159: error: '::swprintf' has not been declared
c:\qt\2010.05\mingw\bin\../lib/gcc/mingw32/4.4.0/include/c++/cwchar:166: error: '::vswprintf' has not been declared
if win32{
QMAKE_CXXFLAGS += -std=gnu++0x
}
else {
QMAKE_CXXFLAGS += -std=c++0x
}