Dav*_*ble 5 c++ coding-style idioms
考虑以下人为的例子:
void HandleThat() { ... }
void HandleThis()
{
if (That) return HandleThat();
...
}
Run Code Online (Sandbox Code Playgroud)
这段代码工作得很好,我很确定它是规范有效的,但我(也许是我自己)考虑这种不寻常的风格,因为调用似乎返回函数的结果,尽管这两个函数都是原型的无效.
通常,我希望看到:
if (That) {HandleThat(); return;}
Run Code Online (Sandbox Code Playgroud)
我觉得,对于发生的事情没有任何含糊之处.
SO社区,我可以看看返回 - 无效编码风格是否令人困惑或有问题?它有成语的感觉; 我应该使用它还是避免使用它?
一般来说,我会努力澄清并使用第二种风格.另一方面,第一种形式的整洁性让我对它有所了解.
Har*_*d L 11
这可能只是有点太聪明了.如果该行最终离函数顶部超过几行,则会令人困惑.这也意味着程序员在查看代码时需要关联
return HandleThat();
Run Code Online (Sandbox Code Playgroud)
使用void返回类型并在他们真正理解代码之前弄清楚聪明.当您在if/else分支中执行多个操作时,您应该使用大括号并将步骤放在不同的行上.占用更多空间但更容易理解:
if (That) {
HandleThat();
return;
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
292 次 |
| 最近记录: |