在一个试块中,怎么办......如果没有异常发生? OBJ-C

时间:2010-06-25 08:33:33

标签: objective-c exception exception-handling try-catch

在标准的try-catch-error-block中,如果没有抛出错误,我如何建议程序只做一些事情?

例如,如果我想为基于ip的东西配置代理,如果一切正常,它应该会使按钮灰显。

4 个答案:

答案 0 :(得分:1)

首先将变量设置为true,即noError = true

如果发生任何错误,请将其设置为false

答案 1 :(得分:0)

我会这样做(c#,但这个想法可以在其他地方重复使用)

try {
 try {
 // some code
 }
 catch 
 { throw; }


 // code, done only if there was no error
}
catch {
 // read the exception.
}

答案 2 :(得分:0)

你只需将它放入try块中,但是在可能抛出的语句之后。如果是,控制流将转移到catch块并跳过后面的指令。这不应该是try的使用方式。

当然,如果你有多个语句可能会抛出异常,而只是把所有内容都放在一个大毛茸茸的全局尝试块中,那么识别正确的位置会变得更加困难。这是巨大的全局try块是Antipattern的原因之一。

答案 3 :(得分:0)

确定

@Yossarian 不起作用。

@PeterWong 你的作品。编译器只是无法解释if(noerror),它必须是if(noerror == false)