jjn*_*guy 17
良好使用out参数的最佳示例是TryParse方法.
int result =-1;
if (!Int32.TryParse(SomeString, out result){
// log bad input
}
return result;
Run Code Online (Sandbox Code Playgroud)
使用TryParse而不是ParseInt删除处理异常的需要并使代码更加优雅.
该out参数基本上允许来自方法的多个返回值.
方法参数上的out方法参数关键字使方法引用传递给方法的同一变量.当控制传递回调用方法时,对方法中的参数所做的任何更改都将反映在该变量中.
当您希望方法返回多个值时,声明out方法很有用.使用out参数的方法仍然可以返回值.一个方法可以有多个out参数.
要使用out参数,必须将参数显式作为out参数传递给方法.out参数的值不会传递给out参数.
作为out参数传递的变量无需初始化.但是,必须在方法返回之前为out参数指定一个值.
一个例子:
using System;
public class MyClass
{
public static int TestOut(out char i)
{
i = 'b';
return -1;
}
public static void Main()
{
char i; // variable need not be initialized
Console.WriteLine(TestOut(out i));
Console.WriteLine(i);
}
}
Run Code Online (Sandbox Code Playgroud)
http://msdn.microsoft.com/en-us/vcsharp/aa336814.aspx
Out 参数是仅输出参数,这意味着它们只能从函数传回值。我们通过在参数数据类型前面加上 out 修饰符来创建“out”参数。当传递“out”参数时,仅将未分配的引用传递给函数。
using System;
class ParameterTest
{
static void Mymethod(out int Param1)
{
Param1=100;
}
static void Main()
{
int Myvalue=5;
MyMethod(Myvalue);
Console.WriteLine(out Myvalue);
}
}
Run Code Online (Sandbox Code Playgroud)
由于“out”参数的值被传递回调用部分,因此上述程序的输出将为 100。笔记
即使在调用部分中,修饰符“out”也应该位于传递的参数之前。在给函数赋值之前,不能在函数内使用“out”参数。在方法返回之前,应为“out”参数分配一个值。
| 归档时间: |
|
| 查看次数: |
12927 次 |
| 最近记录: |