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 = 2;
        int b = 5;
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方法可以理解为做一个危险事情,做这个危险事情的时候,导演为防止主演受伤,给主演找个外貌相似的替身,替代主演去完成这个危险的事情,当替身完成这个危险事情的时候,替身的状态(受伤或者没有受伤)不会改变主演的状态。

 

相关文章:

  • 2022-02-07
  • 2021-05-22
  • 2021-12-24
  • 2022-12-23
猜你喜欢
  • 2022-12-23
  • 2022-02-07
  • 2022-02-07
  • 2021-06-21
  • 2021-06-04
  • 2022-02-07
相关资源
相似解决方案