2、如果方法的参数用reft来标记,在调用该方法之前,必须初始化传递给方法的参数
例子:public sealed class Program
{
public static void Main()
{
int x=5; //x已经初始化
AddVal (ref x); //x必须初始化
Console.WriteLine(x); //结果为15
}
private static void AddVal(ref int x)
{
v += 10;
}
}
3、params是指向方法传递可变参数,标记了params关键字的参数只能放在方法参数列表的最后,还有,该参数只能标识任意类型的一个一维数组
例子:public sealed class Program
{
public static void Main()
{
DisplayTypes(new object(),new Random(),"Jeff",5);
}
private static void DisplayTypes (params object[] objects)
{
if(objects!=null)
{
foreach(object o in objects)
{
Console.WriteLine(o.GetType());
}
}
}
}
方法参数上的 out 方法参数关键字使方法引用传递到方法的同一个变量。当控制传递回调用方法时,在方法中对参数所做的任何更改都将反映在该变量中。当希望方法返回多个值时,声明 out 方法非常有用。使用 out 参数的方法仍然可以返回一个值。一个方法可以有一个以上的 out 参数。若要使用 out 参数,必须将参数作为 out 参数显式传递到方法。out 参数的值不会传递到 out 参数。不必初始化作为 out 参数传递的变量。然而,必须在方法返回之前为 out 参数赋值。属性不是变量,不能作为 out 参数传递。