以下c ++代码有什么区别 -
const int x = 5000;
const int x = 50'00;
答案 0 :(得分:10)
50'00
使用在C ++ 14中添加的digit separator。该数字将解析为5000
,唯一的区别是它可能更容易阅读。通常你会使用数字分隔符来分隔数千,例如1'000'000
,但你可以在数字的任何一点使用它。
答案 1 :(得分:8)
从C ++ 14开始,您可以将数字分隔符 '
放在整数文字中的任何位置(除了开头或结尾或只是在基本指标不包括八进制前导零之后 - 否则你会与 muticharacter文字冲突。)
目的是使代码更具可读性:例如
const int x = 5'000;
或使用印度符号(解释任何地方理由)
const auto x = 12'34'567;
或,以十六进制
const auto x = 0xee'ef;
请注意1e3
之类的类型是double
,这会让你很难受,尤其是在for
循环中用作计数器时
参考:https://en.cppreference.com/w/cpp/language/integer_literal