1. 程式人生 > 其它 >C#之ref引數和out引數的區別

C#之ref引數和out引數的區別


1:什麼是 ref 引數 ? , 2:什麼是 out 引數?
1、使用 ref 引數時,傳入的引數必須先被初始化。對 out 引數而言,必須在方法中對其完成初始化。
2、使用 ref 和 out 時,在方法的引數和執行方法時,都要加 ref 或 out 關鍵字,以滿足匹配。
3、out 適合用在需要 return 多個返回值的地方,而 ref 則用在需要被呼叫的方法,修改呼叫者的引用的時候。

什麼時候選擇用 ref ? 什麼時候選擇用 out ?
1、ref 的使用:使用 ref 進行引數的傳遞時,該引數在建立時,必須設定其初始值,所以ref 側重於修改;
2、out 的使用:採用 out 引數傳遞時,該引數在建立時,可以不設定初始值,但是在方法中必須初始化,所以 out 側重於輸出;

當希望方法返回多個值時,可以用 out,並且一個方法中的引數可以有一個或多個 out 引數;
使用 out 引數,必須將引數作為 out 引數顯式傳遞到方法中,但是out 引數的值不會被傳遞到方法中,且屬性不是變數,不能作為 out 引數傳遞。

簡單來說:ref 是有進有出,而 out 是隻出不進。
原文連結:https://blog.csdn.net/qq_42351033/article/details/85125089

1:什麼是 ref 引數 ? , 2:什麼是 out 引數?
1、使用 ref 引數時,傳入的引數必須先被初始化。對 out 引數而言,必須在方法中對其完成初始化。
2、使用 ref 和 out 時,在方法的引數和執行方法時,都要加 ref 或 out 關鍵字,以滿足匹配。
3、out 適合用在需要 return 多個返回值的地方,而 ref 則用在需要被呼叫的方法,修改呼叫者的引用的時候。

什麼時候選擇用 ref ? 什麼時候選擇用 out ?
1、ref 的使用:使用 ref 進行引數的傳遞時,該引數在建立時,必須設定其初始值,所以ref 側重於修改;
2、out 的使用:採用 out 引數傳遞時,該引數在建立時,可以不設定初始值,但是在方法中必須初始化,所以 out 側重於輸出;

當希望方法返回多個值時,可以用 out,並且一個方法中的引數可以有一個或多個 out 引數;
使用 out 引數,必須將引數作為 out 引數顯式傳遞到方法中,但是out 引數的值不會被傳遞到方法中,且屬性不是變數,不能作為 out 引數傳遞。

簡單來說:ref 是有進有出,而 out 是隻出不進。
原文連結:https://blog.csdn.net/qq_42351033/article/details/85125089