3

から派生してカスタム ロケールを作成していますstd::codecvt。私が実装することになっているメソッドのほとんどは、 this を除いて非常に単純ですstd::mbstate_t。私のコンパイラvs2010では、.として宣言されていintます。しかし、グーグルはそれがPODタイプであると私に言います。それは時々(私が知らないものの)ユニオンまたは構造体(再び私はそれを見つけることができません)です。

私が理解しているように、std::mbstate_t部分変換のプレースホルダーです。std::codecvt::on_out()そして、出力を書き込むためにより多くのスペースが必要な場合に効果を発揮すると思いますstd::codecvt::do_unshift()。私の仮定が間違っている場合は修正してください。

ポインターの保存に関する別の投稿を読みましたが、投稿には適切な回答がありません。標準では16ビット以上であると述べられていますが、32ビットタイプであると想定するこの例も読みました。int

私の質問。std::mbstate_t に何を安全に保存できますか? 別のタイプに安全に交換できますか? 上記の投稿への回答はそれを置き換えることを提案していますが、次のコメントはそうではありません。

4

1 に答える 1