gpt4 book ai didi

c# - 我无法理解这种编程风格

转载 作者:太空狗 更新时间:2023-10-29 20:45:37 26 4
gpt4 key购买 nike

有人可以向我解释这行代码的含义以及它是否是好的做法吗?

在我看来,它试图将一个或另一个值赋给一个 boolean 值,但不清楚。

   myBoolVar = isC || isP || isX;

最佳答案

The || operator represents a conditional OR.

如果 isC、isP 或 isX 中的任何一个为真,则 myBoolVar 将为真。

它类似于| operator在 boolean 操作数之间 除了如果左侧计算为真,则不会计算右侧

至于这是否是好的做法,考虑一个更冗长的语义等价物:-

bool myBoolVar;

if (isC)
{
myBoolVar = true;
}
else if (isP)
{
myBoolVar = true;
}
else if (isX)
{
myBoolVar = true;
}

尤其要考虑您更愿意维护哪一个。在大多数情况下,我希望人们会考虑更简洁的 myBoolVar = isC ||是P || isX; 以提高可读性。

我从下面的评论中看到,您在争论编程是关于简单而不是关于“炫耀”。我同意程序员经常为了自己的满意而尝试压缩或故意混淆代码——这通常会损害项目。这可能不是这些情况之一。我可能会更清楚地命名变量,我可能会将它封装在一个适当命名的属性后面,但我肯定会使用 a || b || c 构建更冗长的内容。

如果你觉得你有更清晰的表达方式,请与我们分享,我们可以讨论。

关于c# - 我无法理解这种编程风格,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13232943/

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