out
關鍵字經過引用傳遞參數。c#
方法定義和調用方法必須顯式使用out關鍵字;優化
調用方法時參數沒必要初始化,方法內必須對其賦值;spa
參數中能夠聲明多個out修飾的參數。code
例:blog
public void UseOut( out int num) { //必須對參數num賦值 num = 20; } public void Index() { //聲明num不用必須初始化 int num; UseOut(out num); //輸出20 Response.Write(num); }
將上述代碼改成:string
public void UseOut( out int num) { //必須對參數num賦值 num = 20; } public void Index() { //聲明num不用必須初始化 int num; UseOut(out num); //輸出True Response.Write(num==20); }
上述例子引出「重試模式」的概念,這裏不做闡述,重試模式返回一個boo,表示操做成功與否。許多分析方法(好比DataTime.TryParse)用到了此模式。it
int.TryParse()在c#7.0上的優化(這裏只是用帶out的int.TryParse()方法舉例)class
c#6.0以前的語法語法
string number = "123"; int num; int.TryParse(number, out num);
c#7.0以後的語法引用
string number = "123"; int.TryParse(number,out int num);
OR
string number = "123"; int.TryParse(number,out var num);
關於out關鍵字先寫到這裏了。