-std=c++0x
をg ++に指定すると、#include <iostream>
を指定できません。次のエラーメッセージが表示されます(g ++ 4.4.0、mingw)。`#include <iostream>`と `-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
なぜでしょうか?これは最新のg ++で修正されましたか? (もしそうなら、誰も最新のg ++をQtに組み込む方法を知っていますか?)
「-std = C++ 0x」を削除した場合、コンパイラは何を通知しますか? – Simone
これはMinGWのC++ライブラリ/ヘッダーのバグのようですが、G ++ではそうではありません。 –
@Simone:-std = C++ 0xを指定しないと、問題はありません。 – TonyK