gpt4 book ai didi

coding-style - 哪种编码风格更好?

转载 作者:行者123 更新时间:2023-12-03 01:56:49 24 4
gpt4 key购买 nike

在代码审查期间,一位高级开发人员对我在代码中进行的一些嵌套发表了评论。他建议我设置一个 bool 值,这样我就不会有超过一层的嵌套。我认为我的代码更具可读性,但想获得其他开发人员对此的意见。哪种风格更好?他本能地厌恶嵌套是否成立?

下面是一些简化的代码示例。

嵌套:

If(condition1)
{
If(condition2)
{
if(condition3)
{
return true;
}
else
{
log("condition3 failed");
}
else
{
log("condition2 failed")
}
}
else
{
log("condition1 failed")
}

return false;

bool 驱动:

bool bRC = false;

bRC = (condition1);
if(brc)
{
bRC = (condition2);
}
else
{
log("condition1 failed");
return false;
}

if(bRC)
{
bRC = (condition3);
}
else
{
log("condition2 failed");
return false;
}

if(bRC)
{
return true;
}
else
{
log("condition3 failed");
return false;
}

最佳答案

我更喜欢你的,但我可能会这样做:

if (condition1 && condition2 && condition3)
{
return true;
}
else if (!condition1)
{
log("condition1 failed");
}
else if (!condition2)
{
log("condition2 failed");
}
else
{
log("condition3 failed");
}
return false;

如果条件是复杂的表达式,那么我可能会在计算 if 语句之前将表达式分配给适当命名的变量,以避免重新计算每个 if 中的值。

这是假设正常模式是所有条件都为真,因此您希望首先进行检查。如果正常模式是一个或多个条件为假,那么我会重新排序并依次检查每个否定,如果所有检查都失败,则简单地返回 true。这也将消除使用临时变量来代替复杂表达式的需要。

关于coding-style - 哪种编码风格更好?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1641156/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com