#region
//out和ref
//通常情况下我们知道方法的参数如果是值类型,那么执行的是值传递,参数被修改后并不会反映到该参数变量中。
//但使用ref关健字可使值参数按引用传递,其效果是,当控制权传递回调用方法时,在方法中对参数所做的任何更改都将反映在该参数变量中。
//若要使用ref参数,则定义方法和调用方法都必顺显式使用ref关健字,示例如下。
//out关健字与ref用法相似,唯一不同的地方是out修饰的参数不必初始化
//一般情况下都用ref,因为初始化保证参数的值有一定意义。
#endregion
private void DoWork(ref int a)
{
a = 50;
}
private void button1_Click(object sender, EventArgs e)
{
int b = 0;//初始化
DoWork(ref b);//用了ref说白了就是传了一个地址进去,然后方法对这个地址中的值进行操作,当然最后b的结果就是修改后的数据。跟用公共变量是一个道理。
MessageBox.Show(b.ToString());
}