我经常在C和C ++代码中看到以下约定:
some_type val;
val = something;
some_type *ptr = NULL;
ptr = &something_else;
代替
some_type val = something;
some_type *ptr = &something_else;
最初,我认为这是从必须在范围的顶部声明所有局部变量的日子起遗留下来的习惯。但是我学会了不要这么快就消除资深开发人员的习惯。因此,是否有充分的理由在一行中声明并在事后分配?