将这些定义用于基本类型是一种好习惯吗?
int num1(), num2(0);
char ch1(), ch2(' ');
他们很容易被误认为功能定义。
int nam1();
char ch1();
答案 0 :(得分:1)
因为C ++允许你在程序中的任何一点放置变量声明......我认为没有初始化变量的借口。
关于Type var (param);
和Type var {param};
之间C ++ 11的差异存在一些争议,后者通过所谓的Uniform Initialization来规定。我试图只使用统一初始化并从中获得一些奇怪的边缘情况。我不确定它是否已被破解,并且已经退缩并且通常会寻求代码清晰度。
所以我会说char ch1(' ');
,由于丑陋,更好地说是char ch = ' ';
它确实是一个权衡系统。