面試的時候一般很高的概率會問到ref和out的區別。。。我們死記硬背的話很難記住。
建議大家和我一樣簡單的探索一下。動手試一下就能記住了。
共同點是我們在使用ref或者out的時候一定要在寫的方法裡面的引數前面加上ref和out
呼叫的時候也是一樣要寫上的
若要使用ref或者 out 引數,方法定義和呼叫方法都必須顯式使用 ref或者out 關鍵字。
1namespace
test225
static
public
void myref(ref
intnumber)
2630
//如果我們不對number賦值。。會提示在控制離開當前方法之前必須對out引數賦值。
31static
public
void myout(out
intnumber)
323738}
39 }
最後得出結論。。
1.使用ref呼叫方法。引數必須是初始化之後的變數。
2.使用out呼叫方法。引數可以不初始化。也可以傳遞初始化的引數。
3.使用ref作為引數的方法。方法可以不對傳進來的引數賦值。
4.使用out作為引數的方法。方法必須對傳進來的引數進行賦值。
ref和out的使用
c 程式設計師參考 ref c 參考 ref 關鍵字使引數按引用傳遞。其效果是,當控制權傳遞 用方法時,在方法中對引數所做的任何更改都將反映在該變數中。若要使用 ref 引數,則方法定義和呼叫方法都必須顯式使用 ref 關鍵字。例如 class refexample static void main...
ref和out的區別
還是以例子來表明吧 1.ref int i 0 有函式fun ref i 和fun i 它們的函式體都是,那麼在執行以下兩段 後 1 int i 0 fun i system.console.writeline i.tostring 2 int i 0 fun ref i system.consol...
ref和out的區別
ref與out 1.out和ref 關鍵字會導致引數通過引用來傳遞 2.ref要求變數必須在傳遞之前進行初始化 3.儘管作為 out 引數傳遞的變數不必在傳遞之前進行初始化,但需要呼叫方法以便在方法返回之前賦值 4.ref 和 out 關鍵字在執行時的處理方式不同,但在編譯時的處理方式相同 5.個人...