1、ref 参数必须初始化,out 不必。

int i;
SomeMethod( ref i );//语法错误
SomeMethod( out i );//通过

 

2、因为ref需要初始化,所以ref 可以在函数内部使用,

而out未必初始化,所以不能在函数内部使用。

public void SomeMethod(ref int i)
{
   int j=i;//通过
   //...
}
public void SomeMethod(out int i)
{
   int j=i;//语法错误

}

 

3、ref参数已初始化,所以在函数内部不一定需要改变值,

out未必初始化,所以在结束函数前需要改变其值。

 

相关文章:

  • 2022-12-23
  • 2022-02-17
猜你喜欢
  • 2021-10-20
  • 2022-03-04
  • 2021-09-13
  • 2022-01-05
  • 2021-11-08
相关资源
相似解决方案