C#之实参和形参

1.值类型

例如:我们定义一个函数

static void Exchange(int x, int y)
{
int flag = x;
flag = y;
y = x;
x = flag;
}

其中,int x ,int y 为形参,我们可以通过如下方式进行调用函数,调用时方法名,参数个数、参数类型都要对应一致,如下

 static void Main(string[] args)
{
int a = ;
int b = ;
Exchange(a, b);
Console.WriteLine("a="+a.ToString()+"\r\n"+"b="+b.ToString()); }

int属于值类型所以在调用Exchange(a,b)方法的时候,程序会给a和b分别复制一个相同的a和b,然后去执行方法,当方法执行结束之后,根据GC机制,刚刚分配的地址会被清除掉,所以在执行Exchange(a,b)之后,Main方法的a和b值是没有发生变化的。方法参数为值类型时,我们把a可以理解为一个主演,Exchange方法可以理解为做一个危险事情,做这个危险事情的时候,导演为防止主演受伤,给主演找个外貌相似的替身,替代主演去完成这个危险的事情,当替身完成这个危险事情的时候,替身的状态(受伤或者没有受伤)不会改变主演的状态。

上一篇:go语言基础之工程管理和工作区介绍


下一篇:ip地址转换