2011-06-02 62 views
1

我使用的冷杉時間可選參數,但我不明白這兩個方法定義之間的差異:方法的可選參數和InteropServices

private void method1([Optional, DefaultParameterValue(string.Empty)] string testString) 
{ 
    //do something 
} 

private void method2(string testString = "") 
{ 
    //do something 
} 

定義需要:

using System.Runtime.InteropServices; 

方法2定義體積更小,不需要進口。

在使用這些方法語法之前,我需要考慮什麼嗎?

+2

方法2是C#4中的新增方法。自.NET 1.1以來,方法1一直存在。 – 2011-06-02 14:01:47

+0

@Etienne de Martel應該是一個答案。 – vcsjones 2011-06-02 14:07:41

+0

@vcsjones我覺得它太短,無法正確回答... – 2011-06-02 14:17:34

回答

1

自.NET 1.1以來,方法1出現了。

方法2是在C#4中引入的(C#在此之前不支持可選參數)。