c中解釋下out和ref的區別,C 中解釋下out和ref的區別?

時間 2021-10-14 20:16:29

1樓:小膽大俠

ref 要求引數在傳遞給函式前要初始化,out則不需要,常見於平臺呼叫中

2樓:糖糖寳寳

out與ref的區別如下:

private void button1_click(object sender, eventargs e)

//ref

public void refvalue(ref int refint)

//一個函式可以有多個ref引數

public void refvalue(ref int refint,ref int rint)

//out

public void outvalue(out int outint, int i)

/*函式不可以有多個out引數

public void outvalue(out int outint, out oint,int i)*/

3樓:

ref修飾引數,說明是引用的傳遞,也就是說在函式中對引數的操作會改變原來的值;out修飾引數,是說這個引數可以不被初始化,但在函式中一定要有賦值的語句。

4樓:孤獨沙暴

簡單來說,out和ref傳遞的都是引用而不是值,out側重於輸出使用之前不需賦值而ref在使用之前需要賦值,另外這兩個關鍵字可以變相實現使一個方法輸出多個值

5樓:匿名使用者

總起來說:ref側重修改,out側重輸出。

c#中關鍵字ref和out的區別

6樓:山東中公優就業

1、兩者都是按地址傳遞的,使用後都將改變原來引數的數值。

2、ref可以把引數的數值傳遞進函式,但是out是要把引數清空,就是說你無法把一個數值從out傳遞進去的,out進去後,引數的數值為空,所以你必須初始化一次。

這個就是兩個的區別,或者說就像有的網友說的,ref是有進有出,out是隻出不進。

3、使用ref型引數時,傳入的引數必須先被初始化。out,必須在方法中對其完成初始化。

4、使用ref和out時,在方法的引數和執行方法時,都要加ref或out關鍵字。以滿足匹配。

5、out適合用在需要retrun多個返回值的地方,而ref則用在需要被呼叫的方法修改呼叫者的引用的時候。

C中關鍵字ref和out的區別,c 中ref和out關鍵字的用法,以及有什麼不同,求大神解答,線上等

山東中公優就業 1 兩者都是按地址傳遞的,使用後都將改變原來引數的數值。2 ref可以把引數的數值傳遞進函式,但是out是要把引數清空,就是說你無法把一個數值從out傳遞進去的,out進去後,引數的數值為空,所以你必須初始化一次。這個就是兩個的區別,或者說就像有的說的,ref是有進有出,out是隻出...

C中的ref和out關鍵字怎麼使用呢

概念你看書就可以了,或者上樓上的解說,我給你兩個例子 ref例子 定義一個方法 public void setvalue ref int count 呼叫方法 int count 10 setvalue ref count console.write count 這裡count為120 out 例子...

求幫忙解釋下C 中std sort 函式中的引數問題,如何得到需要排序的n數量的問題。詳情請看下面

last不算的,這是stl的慣例.stl中的所有演算法,first last這樣的引數,都是不算在內的.int a 4 這樣的資料排序.引數就是 first a last a 4 一共4個資料,分別是a 0,a 1,a 2,a 3 last也就是a 4不算在內.至於內部編碼,std sort的實現是...