C# ref 與out區別

ref關鍵字
調用方法裏ref傳入參數 方法外要聲明   一定要賦值 方法內可用可不用

out關鍵字

調用方法裏out傳入參數 方法外要聲明 可賦值可不賦值 方法內一定要賦值

int refn = 0;
TestRef(ref refn);


int outn;
TestOut(out outn);


/// <summary>
/// 不管外面有無初始化,方法內一定要賦值
/// </summary>
/// <param name="n"></param>
private static void TestOut(out int n)
{
n = 0;
Console.WriteLine("TestOut " + n);
}

/// <summary>
/// 外面一定要初始化,內部隨便
/// </summary>
/// <param name="n"></param>
private static void TestRef(ref int n)
{
Console.WriteLine("TestRef " + n);
}


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章