【发布时间】:2020-01-03 12:13:47
【问题描述】:
我现在正在编程一段时间,我已经开始尝试改进我的代码。因为我真的很讨厌创建在长函数中只使用一次的无数变量,所以通过使用括号来缩短变量范围是一种好习惯吗? IE。 而是写:
void fcn()
{
int var1;
// some part of fcn
// use of var1;
// rest of fcn
}
写:
void fcn()
{
// some part of fcn
{
int var1;
// use of var100;
}
// rest of fcn
}
【问题讨论】:
-
如果你在一个函数中的任何地方都接近无数个变量,你需要拆分这个函数——你会为每个函数获得全新的作用域。 (也就是说,特别是针对锁之类的事情。)
-
是的,我宁愿将那段逻辑拆分成一个单独的函数。阅读起来更清晰,同时范围也很小。
-
不要像 Pascal 程序员一样在函数顶部声明变量。声明尽可能接近使用。如果你只使用一次变量,你真的需要它吗?