ref 關鍵字使引數按引用傳遞。其效果是,當控制權傳遞**用方法時,在方法中對引數所做的任何更改都將反映在該變數中。若要使用 ref 引數,則方法定義和呼叫方法都必須顯式使用 ref 關鍵字。
out 關鍵字會導致引數通過引用來傳遞。這與 ref 關鍵字類似,不同之處在於 ref 要求變數必須在傳遞之前進行初始化。若要使用 out 引數,方法定義和呼叫方法都必須顯式使用 out 關鍵字。
案例:
ref
static int getintresult( ref float **g, ref int max, ref int min)
static void main(string args)
;float **g=0;//ref引數必須在呼叫前初始化
int max=0;
int min=0;
int sum = getintresult(arr, ref **g, ref max, ref min);
}out
static int getintresult(int arry, out float **g, out int max, out int min)
static void main(string args)
;float **g;//在使用out關鍵字時,不需要在此處初始化,初始化也不會影響到方法內部的值,所以你初始化沒用
int max;
int min;
int sum = getintresult(arr, out **g, out max, out min);
console.writeline("和:\t平均值:\t最大值:\t最小值:", sum, **g, max, min);
console.read();
}
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...