不卡AV在线|网页在线观看无码高清|亚洲国产亚洲国产|国产伦精品一区二区三区免费视频

學(xué)習(xí)啦 > 學(xué)習(xí)英語 > 專業(yè)英語 > 計算機(jī)英語 > c中out的用法

c中out的用法

時間: 長思709 分享

c中out的用法

  下面小編就跟你們詳細(xì)介紹下c中out的用法的用法,希望對你們有用。

  c中out的用法的用法如下:

  在C#這門高級語言中,你是否注意過ref與out的用法?你是否為在調(diào)用方法時需要多個返回值呢?不用急,接下來,我們?nèi)ヒ黄鹑パ芯恳幌逻@個問題。。。

  其實呢,C#語言中,參數(shù)的傳遞一共有兩種方法,值傳遞和引用傳遞。

  而ref與out這兩種方式都屬于引用傳遞,只是他們的用法稍有不同。

  ref的特點是有進(jìn)有出,即在傳遞參數(shù)之前就已經(jīng)對它進(jìn)行賦值,在傳入方法體時,是將該數(shù)的地址傳了進(jìn)來,如果對其進(jìn)行相應(yīng)的賦值操作,直接改的是地址里的值,所以,當(dāng)該方法執(zhí)行完,該數(shù)的值也就跟著改變了。

  代碼如下:

  static void Main(string[] args)

  {

  int i = 10;

  FF( ref i);

  Console.WriteLine(i);

  }

  static void FF(ref int i)

  {

  i = i + 1;

  }

  而out與ref的唯一區(qū)別是,在方法接收參數(shù)后,對它進(jìn)行初始化(如果沒有初始化,將會報錯的),其余的用法都和ref一樣。

  代碼如下:

  static void Main(string[] args)

  {

  int i ;

  FF( out i);

  Console.WriteLine(i);

  }

  static void FF(out int i)

  {

  i=10; //如果沒有這個賦值,系統(tǒng)將會報錯的

  i = i + 1;

  }

  其實,個人認(rèn)為,在平時用的時候,ref與out的區(qū)別并沒有那么明顯,從性能上分析的話,有時out會好點。

537226