-
REF
(關鍵字)
鎖定
- 中文名
- ref
- 外文名
- ref
- 用 途
- C#中關鍵字通過引用傳遞參數
- 引用方法
- 顯式使用
例如
class RefExample { static void Method(ref int i) { i=44; } static void Main() { int val=0; Method(ref val);//val is now 44 } }
傳遞到ref參數的參數必須最先初始化。這與 out 不同,out 的參數在傳遞之前不需要顯式初始化。儘管ref和out在運行時的處理方式不同,但它們在編譯時的處理方式是相同的。因此,如果一個方法採用ref參數,而另一個方法採用out 參數,則無法重載這兩個方法。
注意:屬性不是變量,因此不能作為ref參數傳遞。
ref和out兩個參數的不同在於:
1、ref傳進去的參數必須在調用前初始化,out不必,即:
int i; SomeMethod(ref i);//語法錯誤 SomeMethod(out i);//通過
2、ref傳進去的參數在函數內部可以直接使用,而out不可:
public void SomeMethod(ref int i) { int j=i;//通過 //... } public void SomeMethod(out int i) { int j=i;//語法錯誤 }
3、ref傳進去的參數在函數內部可以不被修改,但out必須在離開函數體前進行賦值。
- 參考資料
-
- 1. ref (C# Reference) .微軟官網 文檔[引用日期2017-06-27]
- 詞條統計
-
- 瀏覽次數:次
- 編輯次數:13次歷史版本
- 最近更新: 君伟junwei521