名前空間
変種
操作

std::numpunct::thousands_sep, do_thousands_sep

提供: cppreference.com
< cpp‎ | locale‎ | numpunct
 
 
 
 
ヘッダ <locale> で定義
public:
char_type thousands_sep() const;
(1)
protected:
virtual char_type do_thousands_sep() const;
(2)
1) public メンバ関数。 最も派生したクラスのメンバ関数 do_thousands_sep を呼びます。
2) 整数値および浮動小数点値の整数部を解析または書式化するときの桁グループ間の区切りとして使用される文字を返します。

[編集] 戻り値

桁区切りとして使用する char_type 型のオブジェクト。 std::numpunct の標準の特殊化は ',' および L',' を返します。

[編集]

#include <iostream>
#include <locale>
 
struct space_out : std::numpunct<char> {
    char do_thousands_sep()   const { return ' '; }  // separate with spaces
    std::string do_grouping() const { return "\1"; } // groups of 1 digit
};
 
int main()
{
    std::cout << "default locale: " << 12345678 << '\n';
    std::cout.imbue(std::locale(std::cout.getloc(), new space_out));
    std::cout << "locale with modified numpunct: " << 12345678 << '\n';
}

出力:

default locale: 12345678
locale with modified numpunct: 1 2 3 4 5 6 7 8

[編集] 関連項目

[仮想]
それぞれの桁区切り文字間の桁数を提供します
(仮想プロテクテッドメンバ関数) [edit]