std::stoi MinGW 4.6.1 の問題
std::stoi、std::stoul を利用してプログラムをコンパイルしようとしたとき、および MinGW 4.6.1 の関連関数では、これらの関数が std のメンバーとして認識されないことを示すエラーが発生します。この問題は、Windows プラットフォームでの vswprintf の非標準宣言が原因で発生します。
GNU 標準ライブラリは、使用される変換関数を無効にするマクロ _GLIBCXX_HAVE_BROKEN_VSWPRINTF を設定します。このマクロは、使用される変換関数を効果的に無効にします。この問題を詳しく理解するには、http://gcc.gnu.org/bugzilla/show_bug.cgi?id=37522 を参照してください。
この問題に対処するために、ユーザーは配布されたヘッダー ファイルを変更することができます。 MinGWと一緒に。これには、.../lib/gcc/mingw32/4.6.1/include/c /bits/basic_string.h の 2754 行目から !define(_GLIBCXX_HAVE_BROKEN_VSWPRINTF) マクロを削除することが含まれる場合があります。さらに、std::vswprintf を参照する行 2905 ~ 2965 付近にマクロを追加し直します。この変更により、std::to_wstring 関数を除く変換関数が利用できるようになります。
以上がstd::stoi、std::stoul、および関連関数が MinGW 4.6.1 で認識されないのはなぜですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。