在C++中如果我想退出一个方法而不返回任何我可以做的事情;
// A completely useless method
static public double function(int a){
if(a==1){
cout << "Error !";
exit(1);
}
else
return (double)a;
}
Run Code Online (Sandbox Code Playgroud)
我怎样才能在C#中做相同的操作?
Guf*_*ffa 13
在.NET中处理错误条件的常用方法是抛出异常:
public static double function(int a) {
if (a == 1) {
throw new ArgumentException("The value 1 is not accepted.");
}
return (double)a;
}
Run Code Online (Sandbox Code Playgroud)
调用该方法的代码或该行的某个地方将捕获该异常.由调用代码决定是否在适当的级别处理它.
方法以这种方式清理输入是很常见的,这样就可以提前捕获任何错误值,而不是在代码中稍后导致错误,因为它很难跟踪.
Pau*_*ell 12
"退出"功能不只是退出方法 - 它终止程序.
http://msdn.microsoft.com/en-us/library/k9dcesdd.aspx
在C#控制台应用程序中,您可以调用System.Environment.Exit().
但我建议任何执行此操作的代码都可以用更好的结构编写.例如,您的方法可能抛出异常,让调用者决定如何处理它.