代码之家  ›  专栏  ›  技术社区  ›  ooboo

A和B,B只会在A是假锥的情况下提出例外,这是一种好的风格吗?

  •  0
  • ooboo  · 技术社区  · 16 年前

    典型示例:

    while foo.hasBar() && foo.getBar() != spam
    {
         do lots of stuff
    }
    

    如果没有条,则foo.getbar()将引发异常。但是,可以保证,除非foo有一个条,否则不会计算此表达式。这是一种好的编程风格吗?

    1 回复  |  直到 16 年前
        1
  •  2
  •   unwind    16 年前

    如果您使用的语言保证对布尔值进行这种评估,并且(这是非常常见的,并且被称为 short-circuit evaluation ,那么是的,当然可以信赖。

    另一方面,不必要地重复 foo.hasBar() 循环测试对我来说似乎很笨拙。