Является ли хорошей практикой использование этих определений для основных типов?
int num1(), num2(0);
char ch1(), ch2(' ');
Их можно легко принять за определения функций.
int nam1();
char ch1();
Потому что C ++ позволяет размещать объявления переменных в любой точке программы … Я думаю, что для неинициализированных переменных мало оправданий.
Есть немного противоречий относительно различий в C ++ 11 между Type var (param);
а также Type var {param};
с последним предписывается через то, что называется Единая инициализация. Я пытался использовать только равномерную инициализацию и получил некоторые странные крайние случаи из этого. Я не уверен, что это все, что нужно, чтобы быть, и отступали и в целом ищут ясности кода.
Так что я бы сказал, char ch1(' ');
в силу того, что он некрасив, лучше сказать как char ch = ' ';
Это действительно система компромиссов.