ref类型参数侧重修改,out类型参数侧重输出;
ref在传入值之前必须先初始化
out在函数内,函数结束之前,即传出值之前初始化.
eg:
protected void Page_Load(object sender,EventArgs e)
{
int indexRef=1;
TestRef(ref indexRef);
int indexOut;
TestOut(out indexOut);
Response.Write("Ref:"+indexRef.ToString()+"<br>");
Response.Wrtie("Out:"+indexOut.ToString()+"<br>");
Response.End();
}
private void TestRef(ref int index)
{
//不需要初始化
for(int i=0;i<10;i++)
{ index += index;}
}
private void TestOut(out int index)
{
//初始化
index = 1;
for(int i=0;i<10;i++)
{ index += index; }
}