C#默认参数

示例

如果要提供省略参数的选项,则可以使用默认参数:

static void SaySomething(string what = "ehh") {

    Console.WriteLine(what);

}  

static void Main() {

    // prints "hello"

    SaySomething("hello"); 

    // prints "ehh"

    SaySomething(); // The compiler compiles this as if we had typed SaySomething("ehh")

}

当您调用此类方法并忽略为其提供默认值的参数时,编译器将为您插入该默认值。

请记住,具有默认值的参数需要在没有默认值的参数之后编写。

static void SaySomething(string say, string what = "ehh") {

        //Correct

        Console.WriteLine(say + what);

    }

static void SaySomethingElse(string what = "ehh", string say) {

        //Incorrect

        Console.WriteLine(say + what);

    }

警告:因为它可以那样工作,所以默认值在某些情况下可能会出现问题。如果更改方法参数的默认值并且不重新编译该方法的所有调用程序,则这些调用程序仍将使用编译时存在的默认值,这可能会导致不一致。

以上是 C#默认参数 的全部内容, 来源链接: utcz.com/z/315807.html

回到顶部