2011-04-06から1日間の記事一覧

ソースの文字コード

C++

ソースの文字コードに痛く悩まされたので覚え書き。 2バイト文字が含まれているソースコードを各コンパイラで試してみました。 とりあえず、コンパイルオプションとかなしの状態で。 ☆コンパイラ msvc2010(cl.exe から直接コンパイル) gcc 4.5.2 (MinGW) c…

msvc の /Za オプションでエラー

msvc で、/Za(言語拡張機能の無効化)オプションを付けてコンパイルすると次のコードはエラーになります。 template<typename t> struct hoge{ typedef t type; }; template<typename t> struct foo : hoge<t>{ typedef typename foo<t>::type type; // ここら辺でエラー }; typedef foo<int>::ty</int></t></t></typename></typename>…

msvc の /Za オプションの弊害

range concept でエラー Windows.h をインクルードするとエラー ← new BOOST_WINDOWS が定義されない ← new boost/asio.hpp をインクルードすると netdb.h がないと怒られる ← new もう原因を探るのも疲れました……。 そんな訳で、msvc の言語拡張を /Za オプ…