0
ほとんどのlocaleconv()lconv ::フィールドのstd :: localeにマッピングがあることに気付きました。たとえば:std :: localeにはlconv :: p_cs_precedesと同等の機能はありませんか?
char *decimal_point; // LC_NUMERIC, std::numpunct::decimal_point()
char *thousands_sep; // LC_NUMERIC, std::numpunct::thousands_sep()
char *grouping; // LC_NUMERIC, std::numpunct::grouping()
char *int_curr_symbol; // LC_MONETARY, std::moneypunct<,true>::curr_symbol()
char *currency_symbol; // LC_MONETARY, std::moneypunct::curr_symbol()
char *mon_decimal_point; // LC_MONETARY, std::moneypunct::decimal_point()
char *mon_thousands_sep; // LC_MONETARY, std::moneypunct::thousands_sep()
char *mon_grouping; // LC_MONETARY, std::moneypunct::grouping()
char *positive_sign; // LC_MONETARY, std::moneypunct::positive_sign()
char *negative_sign; // LC_MONETARY, std::moneypunct::negative_sign()
char int_frac_digits; // LC_MONETARY, std::moneypunct<,true>::curr_symbol()
char frac_digits; // LC_MONETARY, std::moneypunct::frac_digits()
は、しかし、いくつかのフィールドは、私たちは特にC.に得ることができるよう、ロケールから同じ情報を得るためのC++のメカニズムを見ていない、私は取得の道が表示されません次のメンバーへの均等に:私はC++たとえば(簡単に移植するCを作るために同等のインターフェースのためのユースケースを想像するので、これらは、C++インタフェースから取り残された理由
char p_cs_precedes; // LC_MONETARY, 1 if currency_symbol is placed before non-negative monetary value, 0 if after
char p_sep_by_space; // LC_MONETARY, indicates the separation of currency_symbol, positive_sign, and the non-negative monetary value
char n_cs_precedes; // LC_MONETARY, 1 if currency_symbol is placed before negative value, 0 if after
char n_sep_by_space; // LC_MONETARY, indicates the separation of currency_symbol, negative_sign, and the negative monetary value
char p_sign_posn; // LC_MONETARY, indicates the position of positive_sign in a non-negative monetary value
char n_sign_posn; // LC_MONETARY, Value indicating the position of the negative_sign for a negative formatted monetary quantity.
私は、好奇心スレッド単位のロケールを使用することができます。これはC言語で移植可能ではありませんが、C++でも可能です)。