gpt4 book ai didi

functional-programming - 两个函数或 bool 参数?

转载 作者:行者123 更新时间:2023-12-02 17:53:03 24 4
gpt4 key购买 nike

何时使用两个函数或何时传递 bool 参数是否有一些规则。

谢谢

最佳答案

自从我上次重读《Code Complete》以来已经有一段时间了,但我依稀记得麦康奈尔谈到过这个问题,“析取一致性”这个词突然出现在我的脑海中。简而言之,

void f(int x, int y, bool b)

对比

void f1(int x, int y)
void f2(int x, int y)

通常是一个选择,并且根据 ftruefalse 下的行为相似或不同,打破可能是有意义的它分成两个函数并给它们不同的名称。通常第三种选择更好,即将 bool 更改为二值枚举,其中枚举名称使区别变得清晰。

关键是看调用点,看看代码的含义是否清楚。如果您想对每个 bool 调用站点发表评论:

f(3, 4, true /* absoluteWidgetMode */ )

并且调用站点通常使用 bool 常量进行调用,这是一种强烈的气味,您应该将其分解为多个函数。

关于functional-programming - 两个函数或 bool 参数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3846889/

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