c#默认参数

时间:2009-07-30 04:21:43

标签: c# .net

在其他语言中,我可以设置方法签名,如

cookEgg(boolean hardBoiled = true)

如果我在方法调用中没有收到参数,则默认参数hardboiled为true。 我将如何在c#中实现这一目标?

非常感谢

3 个答案:

答案 0 :(得分:31)

目前,您必须重载该方法:

void cookEgg(bool hardBoiled) { ... }
void cookEgg() { cookEgg(true); }

C#4.0将添加可选参数 - 您将能够像在原始示例中一样编写代码,并且它将按照您的预期工作。

答案 1 :(得分:11)

C#4(Visual Studio 2010)支持默认参数。

http://msdn.microsoft.com/en-us/library/dd264739(VS.100).aspx

答案 2 :(得分:2)

这不是你看起来的确切但我认为 params 这个论点是另一个答案。

void test(params int []arg) { }