如果这件事已经在某个地方被回答了,我很抱歉,但我确实找了一段时间,但什么也没找到。
我在目标C中编码,但这主要是一个一般的编码问题。我基本上在想,是否有一种恰当的、专业的方式来撰写涉及布尔人的“如果其他声明”。具体来说,我想知道
例如,我想知道的有三种不同的方法
方法1
if (myBool)
{
//Do something
}
else
{
//Do something else
}方法2
if (myBool)
{
//Do something
}
else if (!myBool)
{
//Do something else
}方法3
if (myBool)
{
//Do something
}
if (!myBool)
{
//Do something else
}我知道这听起来有点傻,而且真的在细枝末节上唠叨着。在代码可读性方面,我主要想知道这些不同的方法。就可读性而言,方法2/3对我来说几乎是最好的。这使您可以搜索该变量的特定情况,这在大文件中可能更容易。也许这只是一个很小的问题,其实并不重要。
方法1在我看来是最常见的,默认情况下也是我会选择的方法。但是对于更有经验的程序员来说,是否有具体的方法来做到这一点,或者仅仅是偏好呢?
发布于 2017-03-13 02:46:28
1.有一种“最快”的“最佳”编码实践,用于排序涉及布尔的if There状态。
“将通常希望处理的情况放在第一位。这符合这样的一般原则:将决策产生的代码尽可能接近decision...putting --通常情况下,if将重点放在读取主流程上,而不是费力地处理异常情况,因此代码更易于整体阅读。”
代码完成,第二版,第356-357页.
2.是否有一种更受欢迎的书写方式?
在正常逻辑流中,最好使用方法1。
发布于 2017-03-13 05:46:16
我认为Method1也是常见和有效的。
发布于 2017-03-14 15:01:59
处理非常简单的任务的一种简洁的方法
int num;
if (isNegative) {
num = -1;
} else {
num = 1;
}短手是:
int num = isNegative ? -1 : 1; // --> condition ? true : false我不建议在复杂的情况下这样做,因为这样做会变得很麻烦。但是我发现它对于压缩非常简单的if/else任务很有用。
https://stackoverflow.com/questions/42755598
复制相似问题