iT邦幫忙

2022 iThome 鐵人賽

DAY 4
0
Software Development

離開C#新手村的最後試煉系列 第 4

試煉4 - 用過 default 和 params 嗎

  • 分享至 

  • xImage
  •  

開始試煉

default 關鍵字

就是回傳該型別的預設值

int a = default;
a.Dump();
string b = default;
b.Dump();

執行結果為
0
null

那 DateTime c = default;
c會是怎樣呢 不清楚的話請自己執行看看

來看看應用面
public SuccessResultDto(T value = default,string errorMessage = default)
泛型T的參數預設值 就非常適合用default (或者只能用default)

另一種使用方式為
return default(T);
也是泛型方法要預設回傳時 就可以這樣用

params 參數陣列

我看過這樣的程式碼 就是不認識 params

void Demo(int a) {}
void Demo(int a,int b) {}
void Demo(int a,int b,int c) {}

其實params就是用在這樣的情況

void Main()
{
    Demo(1)
    Demo(1,2)
    Demo(1,2,3)
}
void Demo(params int[] a) {}

這樣不管怎樣有幾個參數都會變成 參數陣列
注意事項

  • 必須是一維陣列
  • params 關鍵字後面不允許任何其他參數
  • 方法宣告中只允許一個 params 關鍵

延伸試煉

實戰專案上怎麼用default
SimplCommerce 的 ExtendableObjectExtensions.cs

結束試煉

default 和 params 其實沒有很難 只是怕不知道而已

參考
預設值運算式 (C# 參考)
params (C# 參考)


上一篇
試煉3 - Debug 時,是怎麼看變數內容的呢
下一篇
試煉5 - const 的坑踩過嗎
系列文
離開C#新手村的最後試煉30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言