C ++ 14将数字分隔符的概念引入文字,沿着3'141'592'653'589
。现在这是一个用于可读代码的伟大功能,但我想知道它是否允许在 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
变量还是数字文字。 / p>
但是,对于前缀文字,我看不出在第一个'
到达时令牌是什么意思有任何混淆 - 0x/0b
已经指示它会到达是一个数字文字。