C++14 将数字分隔符的概念引入到文字中,类似于3'141'592'653'589
. 现在这是可读代码的一个很好的功能,但我想知道它是否允许在-type 文字的数字部分之前使用引号。0x/0b
在我看来,这:
unsigned int topThreeBits = 0b'1110'0000;
unsigned int hexNum = 0x'dead'beef;
比没有前导分隔符的更易读:
unsigned int topThreeBits = 0b1110'0000;
unsigned int hexNum = 0xdead'beef;
因为它清楚地描绘了数字的基数。
由于我还没有 C++14 编译器,因此我需要以一种或另一种方式确认它是否允许这样做。
我知道它对像 没有前缀的数字没有意义'123'456
,特别是因为解析器不知道它是一个char
变量还是一个数字文字。
'
但是,对于带前缀的文字,我看不出对于令牌在第一个到达时的含义有任何混淆-0x/0b
已经规定它将是一个数字文字。