gpt4 book ai didi

c++ - 是否有基于参数设置变量的约定?

转载 作者:太空宇宙 更新时间:2023-11-04 14:50:29 25 4
gpt4 key购买 nike

假设我有一个带有标志或其他东西的函数:

void foo (Param p1, Param p2, bool setVariable)
{
//if setVariable is true, set some bool var to true, else false
}

是否存在对以下各项的强烈偏好?

if (setVariable)
_someClassVariable = true;
else
_someClassVariable = false;

_someClassVariable = setVariable;

显然,第二个输入更少,但第一个让我印象深刻,因为它更具可读性。哪一个会更受欢迎?

最佳答案

我通常更喜欢第二种。对我来说,第一个是强烈的警告,即编写代码的人充其量只能勉强胜任。

也就是说,我也倾向于建议不要将 bool 作为参数作为规则传递。 foo(true);foo(false); 的真正含义很少会立即显而易见。使用枚举通常更好,这样您就可以得到 foo(do_this);foo(do_that);

关于c++ - 是否有基于参数设置变量的约定?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10228309/

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