数字分隔符
超过几位的数字文字很难阅读。
- 发音 7237498123。
- 比较 237498123 和 237499123 是否相等。
- 决定 237499123 或 20249472 是否更大。
C++14
定义简单引号将'
标记为数字分隔符,以数字和用户定义的文字。这可以使人类读者更容易解析大量数字。
Version >= C++ 14
long long decn = 1'000'000'000ll;
long long hexn = 0xFFFF'FFFFll;
long long octn = 00'23'00ll;
long long binn = 0b1010'0011ll;
确定其值时,将忽略单引号。
例:
- 文字
1048576
,1'048'576
,0X100000
,0x10'0000
和0'004'000'000
都具有相同的值。 - 文字
1.602'176'565e-19
和1.602176565e-19
具有相同的值。
单引号的位置无关紧要。以下所有内容均相同:
Version >= C++ 14
long long a1 = 123456789ll;
long long a2 = 123'456'789ll;
long long a3 = 12'34'56'78'9ll;
long long a4 = 12345'6789ll;
在 user-defined
文字中也允许:
Version >= C++ 14
std::chrono::seconds tiempo = 1'674'456s + 5'300h;