数値区切り


概要

C++14では、数値リテラル(整数及び浮動小数点)のセパレータが定義された。 このセパレータは、単純に数値を見やすくするのみであり、数値には影響を与えない。 例えば、10進数では3桁ごとに区切ったり、16進数では16bitごとに区切ったりすることで見やすさを向上させることができる。

セパレータには、シングルクォート(')を使用し、全ての数値リテラルで使用可能である。 また、セパレータは連続させることはできず、また8進数を除き、リテラルに対応した数値が一つ以上続いた後にのみ指定できる。

int main() {
    1'000'000;      //OK
    1''000'000;     //NG (')は連続できない
    '1'000'000;     //NG (')は数値リテラルの先頭で使用できない。
    012'34'5;       //OK
    0xFF'EE'DD;     //OK
    0x'FF'EE'DD;    //NG
    0b1'01'0101;    //OK
    0b'101'0101;    //NG
    3.14'159;       //OK
    return 0;
}

results matching ""

    No results matching ""