using system;
using system.collections.generic;
using system.linq;
using system.text;
using system.threading.tasks;
namespace outandref
//ref修飾方法的引數,在呼叫的時候必須在變數之前加上ref關鍵字,只能傳遞變數,不能傳遞常量
//傳遞的時候 不是傳遞變數的值,而是傳遞變數的位址
//out 也是傳遞變數的位址,out必須在方法內賦值,ref可以修改其值,也可以不修改
//out側重輸出,ref側重修改
static void testout(out int i)
static void testref(ref int i)
#region 【氣泡排序】
static void getmaxandmin(int arr, out int max, out int min)}}
max = arr[arr.length - 1];
min = arr[0];
}#endregion
#region[屬性]
public string name;
public string name //屬性的返回值跟他封裝的字段是沒有關係的,跟他的get返回的型別有關係,也跟set賦值的型別也有關係
setelse}}
#endregion}}
ref關鍵字 out關鍵字 區別
ref 和 out 關鍵字比較怪,他們在方法的引數中使用,今天對他們做了認真的研究 msdn上的定義 ref關鍵字使引數按引用傳遞。其效果是,當控制權傳遞 用方法時,在方法中對引數所做的任何更改都將反映在該變數中。若要使用ref引數,則方法定義和呼叫方法都必須顯式使用ref關鍵字。out關鍵字會導致...
ref和out關鍵字初解
ref和out關鍵字初解 引數可以通過引用和值傳遞給方法。通過引用傳遞給方法的變數可以有呼叫它的方法作自由改變,所作的修改會影響原來的變數的值 在c 中,除非特別說明,所有的引數都是值傳遞。這是預設情況,也可以使用ref關鍵字,迫使值引數通過引用傳遞給方法,則給方法對變數所作的修改都會影響原來物件的...
C ref關鍵字和out關鍵字的區別
1 在不使用關鍵字 比如ref關鍵字 out關鍵字等 修飾函式的情況下,大部分函式的引數是以值傳遞的方式,也就是說,呼叫函式 在使用引數 比如mynumber 時,是把該引數複製多乙份,然後將其傳遞給 被呼叫函式 使用,言外之意就是對 被呼叫函式 中此變數的任何修改都不影響 呼叫函式 中原有引數的值...