示例代碼:空動態變量和函數重載
private void DoSomething(object obj)
{
MessageBox.Show("called object");
}
private void DoSomething(params object[] obj)
{
MessageBox.Show("called object[]");
}
private void button1_Click(object sender, EventArgs e)
{
decimal? amount = null;
dynamic obj = amount;
DoSomething(obj);
}
當點擊按鈕1,「[]調用的對象」時顯示的消息。在這個例子中,似乎使用object []參數的重載方法是首選。任何想法爲什麼?我只是好奇而已。
(背景:這種行爲在動態視圖 Formatting nullable decimal in RazorEngine中引起了剃刀的一些意外結果)。
對於任何人想知道的,這個答案中引用的書是:https://books.google.co.in/books?id=s-IH_x6ytuQC – imlokesh
@imlokesh你錯了。我引用了C#規範,而不是一本書。 – MarcinJuraszek
我的不好,我搜索了你引用的確切文字,這是第一個結果。 :) – imlokesh