函数返回样式合乎逻辑,没问题

function return style logical and is okay?

本文关键字:没问题 合乎逻辑 样式 返回 函数      更新时间:2023-10-16
func()调用了

3个不同的函数f1()f2()f3()

我的函数返回布尔值,逻辑 AND 为 3 个函数,

可以吗(正常(?

BOOL func(...)
{
  //...
  return ( f1() && f2() && f3());
}

请注意,内置operator &&执行短路评估;即,如果f1()返回false则不会调用f2()f3()

如果这符合您的意图,那么代码看起来很好。

无论 f1、f2 和 f3 返回什么,这都是完全正确且有效的语法。但是,如果这些函数中的任何一个输出的内容可能转换为 false,则整个表达式的计算结果将为 false。

return ( f1() && f2() && f3());

如果调用 f1() 的返回值为 false,则f2() f3()永远不会被调用。