有没有一种语言有一个关键字可以跳出try-catch
block ?
例如,Ruby 中有一个解决方法:
lambda {
begin
p 0
break
p 1
rescue
p 2
end
}.call
p 3
(我相信)在 Javascript 中也是可能的。
但我想要一种没有匿名函数的方法(以避免缩进) - 就像如果 break
或 continue
是可能的。
我知道,C/C++/C# 语言允许 using goto
.
是否存在采用另一种方法的语言?
最佳答案
您总是可以抛出一个已知的异常,您可以捕获该异常,但不执行任何操作。在 C# 中
try {
if(true)
throw new GetOutException();
}
catch(GetOutException e) {
}
catch(Exception e) {
// Do something here
}
关于language-agnostic - 跳出 "try-catch"?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11064942/