「労働者が自分の仕事をうまくやりたいなら、まず自分の道具を研ぎ澄まさなければなりません。」 - 孔子、「論語。陸霊公」
表紙 > プログラミング > std::stoi、std::stoul、および関連関数が MinGW 4.6.1 で認識されないのはなぜですか?

std::stoi、std::stoul、および関連関数が MinGW 4.6.1 で認識されないのはなぜですか?

2024 年 11 月 12 日に公開
ブラウズ:515

Why are std::stoi, std::stoul, and related functions not recognized in MinGW 4.6.1?

MinGW 4.6.1 の std::stoi の問題

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 関数を除く変換関数が利用できるようになります。

最新のチュートリアル もっと>

免責事項: 提供されるすべてのリソースの一部はインターネットからのものです。お客様の著作権またはその他の権利および利益の侵害がある場合は、詳細な理由を説明し、著作権または権利および利益の証拠を提出して、電子メール [email protected] に送信してください。 できるだけ早く対応させていただきます。

Copyright© 2022 湘ICP备2022001581号-3