函数返回样式逻辑并且没关系?

时间:2017-03-23 07:06:24

标签: c++ return

Q调用3个不同的函数func()f1()f2()

我的函数返回BOOL,逻辑AND为3个函数,

这没关系(正常)?

f3()

3 个答案:

答案 0 :(得分:3)

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

如果你的意图很好,那么代码看起来很好。

答案 1 :(得分:0)

无论f1,f2和f3返回什么,这都是非常精细且有效的语法。但是,如果这些函数中的任何一个输出可能转化为false的内容,则整个表达式将评估为false。

答案 2 :(得分:0)

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

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