我一直认为在C语言中使用大括号块作为闭合块非常方便。主要原因是我可以更好地使用IDE中的语法折叠功能,而又不会增加代码的复杂性(例如添加其他功能)。
// Block 1
{
int i;
i = some_work(i);
j = i;
}
// Block 2
{
...
}
我不知道这在C中是否是正确的解决方案。是否有任何编程标准提到C中的闭包?
大多数编程标准都主张将长函数划分为较短的函数,并使用空行将函数分隔为较小的单元。
造成这种情况的两个主要原因是可读性和可测试性。
如果将长函数分成较小的函数,则每个较小的函数都可以分别进行单元测试。
您所做的总比拥有一个强大的功能要好,但是却错过了可测试性部分。
根据代码的外观,您可能还会错过可读性。请记住,函数具有描述它的名称。块没有名称,因此您需要使用注释来描述它。
如果正确使用,则可以使用块来提高可读性。但是,对于简单的空白行也是如此。与空行相比,块的优势在于它限制了局部变量的范围,从而提高了可读性。
因此,对于您创建的每个块,应考虑它是对应于空行还是函数调用。在后一种情况下,将块转换为单独的功能。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句