将表达式作为布尔值返回是一种很好的编程习惯吗?

时间:2015-02-18 05:38:35

标签: syntax

假设我有一个函数f(x)接受整数x并返回一个布尔值:x是否大于3。

有一种方法可以返回此功能:

bool f(int x){
  return x > 3;
}

这是一个很好的编程习惯吗?而且,它是否经常被实践?

4 个答案:

答案 0 :(得分:1)

只有返回的实现很好,因为功能简单明了。功能名称不好,应该更具描述性。 'f'并没有告诉我们这个函数应该做什么。

答案 1 :(得分:1)

它有点自以为是,但如果你是SOLID原则那么答案是肯定的。

是的原因主要集中在代码重用和可见性/可读性。

另一方面,它可能会抽象逻辑离它使用的地方太远。

如果在一个以上的地方使用了手的规则,那么是,否则没有。

答案 2 :(得分:0)

如果在大多数语言中检查比较函数,它将返回一个描述状态0 - equal1 - greater-1 - less的整数。这样做的好处是可以在排序算法中使用该功能。 如果这是相关的,您可以使用该方法。

答案 3 :(得分:0)

这取决于功能和您想要返回的内容。如果你正在寻找总是为真的布尔值,那么放入一个总是正确的表达式可能更实际,反之亦然。

在这种情况下,它依赖于您希望程序读取数据的方式。这是一个非常简单的例子,但是在更复杂的程序中,您可能会遇到一些问题。