在工作中,我们经常使用返回BOOLEAN的函数,其中BOOLEAN表示逻辑语句,而不是函数的操作是否成功 例如BOOLEAN HaseThisValueBeCountedAlready(Value)
当验证此函数中的输入时,如果检测到无效输入,那么最好的方法是继续。有些人认为只是返回FALSE,但在我看来,这只会隐藏一些事情是错误的,并且调用者可能会继续做一些不知道答案没有意义的价值。
该函数可以全局访问,因此假设调用者将验证输入,感觉有点奇怪。
有什么想法吗?
答案 0 :(得分:1)
通常,对于无法使函数提供服务/答案的无效输入,您需要引发异常。
通过这种方式,向问题提出“问题”的人知道他并没有以正确的方式“制定”它。
答案 1 :(得分:0)
如果它是一个需要定期读取的值,则可以将输出分配给全局变量,如果它有效,或者如果输入无效则不更新全局变量,因此全局变量保持前一个有效值。 / p>
这样,每个函数都需要这个值,使用100%有效值的全局变量。