在十六进制或二进制数字的数字之前是否允许数字分隔符?

时间:2015-09-14 03:08:38

标签: c++ c++14 digit-separator

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已经指示它会到达是一个数字文字。

0 个答案:

没有答案