C ref與out關鍵字區別

2022-09-08 01:09:23 字數 922 閱讀 8467

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...