C ref關鍵字和out關鍵字的區別

2022-04-04 05:05:20 字數 532 閱讀 2797

1、在不使用關鍵字(比如ref關鍵字、out關鍵字等)修飾函式的情況下,大部分函式的引數是以值傳遞的方式,也就是說,「呼叫函式」在使用引數(比如mynumber)時,是把該引數複製多乙份,然後將其傳遞給「被呼叫函式」使用,言外之意就是對「被呼叫函式」中此變數的任何修改都不影響「呼叫函式」中原有引數的值。

2、ref關鍵字和out關鍵字的使用,就可以改變原有引數的值。方法定義和呼叫方法都必須顯式使用。

使用方式就不細講了,直接說說它們的區別:

1) ref關鍵字:傳遞到 ref 引數的引數必須初始化,否則程式會報錯;通過ref的這個特性,一定程度上解決了c#中的函式只能有乙個返回值的問題

2)out關鍵字:把未賦值的變數用作ref引數是非法的,但可以把未賦值的變數用作out引數;另外,在函式使用out引數時,out引數必須看作是未賦值。通過out的這個特性,一定程度上解決了c#中的函式只能有乙個返回值的問題

C ref與out關鍵字解析

簡介 ref和out是c 開發中經常使用的關鍵字,所以作為乙個.net開發,必須知道如何使用這兩個關鍵字.1 相同點 ref和out都是按位址傳遞,使用後都將改變原來引數的數值。2 ref關鍵字 1 使用ref關鍵字的注意點 i 方法定義和呼叫方法都必須顯式使用 ref 關鍵字 ii 傳遞到 ref...

C ref與out關鍵字解析

ref和out都是按位址傳遞,使用後都將改變原來引數的數值。2 ref關鍵字 1 使用ref關鍵字的注意點 i 方法定義和呼叫方法都必須顯式使用 ref 關鍵字 ii 傳遞到 ref 引數的引數必須初始化,否則程式會報錯 iii 通過ref的這個特性,一定程度上解決了c 中的函式只能有乙個返回值的問...

C ref 與 out 關鍵字解析

簡介 ref和out是c 開發中經常使用的關鍵字,所以作為乙個.net開發,必須知道如何使用這兩個關鍵字.1 相同點 ref和out都是按位址傳遞,使用後都將改變原來引數的數值。2 ref關鍵字 1 使用ref關鍵字的注意點 i 方法定義和呼叫方法都必須顯式使用 ref 關鍵字 ii 傳遞到 ref...