if-statement - 使用不带花括号的 if 语句是一种不好的做法吗?

标签 if-statement coding-style curly-braces

我见过这样的代码:

if(statement)
    do this;
else
    do this;

但是,我认为这更具可读性:

if(statement){
    do this;
}else{
    do this;
}

既然这两种方法都有效,这只是一个选择使用哪种方法的问题,还是会推荐其中一种方法而不是另一种方法?

最佳答案

第一个版本的问题是,如果您返回并向 if 或 else 子句添加第二条语句,而没有记住添加大括号,则您的代码将以意想不到且有趣的方式中断。

就可维护性而言,使用第二种形式总是更明智。

编辑:内德在评论中指出了这一点,但我认为也值得链接到这里。这不仅仅是一些象牙塔里的假设废话:https://www.imperialviolet.org/2014/02/22/applebug.html

关于if-statement - 使用不带花括号的 if 语句是一种不好的做法吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2125066/

相关文章:

javascript - 如何在 jQuery 中包含多个 if 语句条件

performance - if-else 比 switch 快,为什么? (在 ActionScript3 中)

python - emacs 23 python.el 自动缩进样式——可以配置吗?

syntax - Prolog 中大括号的含义

git - Cygwin 的 Git 命令正在从命令中删除大括号。我该如何防止这种情况?

没有变量声明的大括号

java - for循环中的if else语句?

ruby - 为什么 `for i in a` 不是惯用的 Ruby?

python - 使用多个模块进行 Python 日志记录的常见/标准做法是什么?

c++ - if 语句总是执行