求助,out参数问题
private void Page_Load(object sender, System.EventArgs e)
{
string[] aa;
string[] bb;
testes(out aa,out bb);
Response.Write(aa[0]);
}
public void testes(out string[] aa,out string[] bb)
{
aa[0]= "cc ";
bb[0]= "dd ";
}
本人想通过testes方法改变两个数组的值。(从没用过out和ref,第一次用)。可是编译时通不过。各位兄弟帮忙看下。先谢了!(能给兄弟讲下out和ref就更加感激不尽了)
------解决方案--------------------上面看错了
可以这样改
private void Page_Load(object sender, System.EventArgs e)
{
string [] aa;
string [] bb;
testes(out aa,out bb);
Response.Write(aa[0]);
}
public void testes(out string[] aa,out string[] bb)
{
aa = new string[]{ "cc ", "dd "};
bb = new string[]{ "ee ", "ff "};
}
------解决方案--------------------请参考MSDN:
方法参数上的 out 方法参数关键字使方法引用传递到方法的同一个变量。当控制传递回调用方法时,在方法中对参数所做的任何更改都将反映在该变量中。
当希望方法返回多个值时,声明 out 方法非常有用。使用 out 参数的方法仍然可以返回一个值。一个方法可以有一个以上的 out 参数。
方法参数上的 ref 方法参数关键字使方法引用传递到方法的同一个变量。当控制传递回调用方法时,在方法中对参数所做的任何更改都将反映在该变量中