可选参数和InteropServices

时间:2011-06-02 13:59:52

标签: c# optional-arguments

我正在使用第一次可选参数,但我无法理解这两种方法定义之间的区别:

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

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

method1的定义需要:

using System.Runtime.InteropServices;

Method2定义较小,无需导入。

在使用其中一种方法语法之前,我是否要考虑一下?

1 个答案:

答案 0 :(得分:3)

方法1自.NET 1.1以来就存在。

方法2是在C#4中引入的(C#在此之前不支持可选参数)。