當前位置:編程學習大全網 - 編程語言 - 什麽是C# ref和out參數?

什麽是C# ref和out參數?

ref參數是壹個引用,out參數是壹個輸出參數。

我編寫壹個控制臺程序來說明兩者的特點和區別:

班級計劃

{

公共靜態void ref方法(ref int I)//參數使用ref關鍵字。

{

i++;

}

公共靜態void out方法(out int I)//參數使用out關鍵字。

{

I = 0;?//out參數指定該參數必須在方法體中初始化。

i++;

}

靜態void Main(string[] args)

{

int I = 0;

RefMethod(參考文獻I);?//調用時也需要ref關鍵字。

控制臺。WriteLine(" I = "+I ");//這裏打印出來的結果是i=1,說明I的值可以被ref關鍵字改變。

int j;

out method(out j);//調用時也需要out關鍵字。

控制臺。WriteLine(" j = "+j ");//這裏打印出來的結果是i=1,說明I的值可以被ref關鍵字改變。

控制臺。read();

}

}

ref和out參數的作用是壹樣的,都是通過關鍵字找到主函數中定義的變量的內存地址,並通過方法體中的語法改變其大小。不同之處在於輸出參數必須初始化。

輸出參數和參考參數之間的差異:

從CLR的角度來看,關鍵字out和關鍵字ref是等價的,這意味著無論使用哪個關鍵字,都會生成相同的元數據和IL代碼。但是,C#編譯器對兩個關鍵字進行了不同的處理。在C#中,兩個關鍵字的區別在於哪個方法負責初始化引用對象。如果方法參數被標記為out,則調用方在調用方法之前不希望初始化對象,被調用的方法無法讀取對象的值,並且被調用的方法必須返回之前為對象賦值。如果方法的參數標記為ref,則調用方必須在調用該方法之前初始化該參數的值,並且被調用的方法可以讀取該參數或為其賦值。

C#是微軟發布的面向對象的高級編程語言,它運行在。NET框架。它計劃在微軟專業開發者論壇(PDC)上首次亮相。C#是微軟研究員安德斯·海爾斯伯格的最新成果。C#看起來和Java驚人的相似;包括單繼承、接口、幾乎和Java壹樣的語法、編譯成中間代碼然後運行等過程。但是,C#和Java有明顯的區別。它借鑒了Delphi的壹個特性,直接與COM(組件對象模型)集成,是微軟的主角。NET windows網絡框架。

C#是壹種源自C和C++的安全、穩定、簡單、優雅的面向對象編程語言。它繼承了C和C++的強大功能,同時去掉了它們的壹些復雜特性(比如沒有宏,不允許多重繼承)。C#結合了VB簡單的可視化操作和C++的高運行效率,成為。NET開發以其強大的操作能力,優雅的語法風格,創新的語言特性和方便的面向組件的編程支持。

C#是壹種面向對象的編程語言。它使程序員能夠快速編寫基於微軟的各種應用程序。NET平臺,以及微軟。NET提供了壹系列工具和服務,最大限度地開發和利用計算和通信領域。

C#使C++程序員能夠高效地開發程序,並且因為可以調用C/C++編寫的原生函數,所以永遠不會失去C/C++原有的強大功能。因為這種繼承關系,C#和C/C++有很大的相似性,熟悉類似語言的開發者可以很快轉向C#。

  • 上一篇:Linux三劍客awk命令篇二:命令操作符
  • 下一篇:Spring Boot壹個項目裏能創建兩個java類嗎
  • copyright 2024編程學習大全網