繁体   English   中英

C# - 如何使用默认值跳过参数?

[英]C# - How to skip parameters with default values?

请考虑以下方法示例:

public void MyMethod (string par1, bool par2 = "true", string par3="")
{
}

现在让我们说我调用MyMethod并将par3的值设置为“IamString”。

如果不将par2的值设置为true或false,我怎么能这样做?

我基本上想要将par2值保留为默认值。

我问这个是因为在Flash的ActionScript中可以通过使用关键字default来做到这一点,所以我可以调用MyMethod(“somestring”,默认,“IamString”),par2将被解释为true ,这是它的默认值。 我想知道C#是否也有可能。

public void MyMethod (string par1, bool par2 = "true", string par3=""){}
Myclass.MyMethod(par1:"par1", par3:"par3");

顺便说一下,这不起作用: bool par2 = "true"

string par2 = "true"

要么

bool par2 = true

谈到默认值,您还可以使用它来获取特定类型的默认值:

default(T)

您可以通过名称参数指定:

instance.MyMethod( "Hello", par3:"bla" );

看看这里

还有另一个错误:

bool par2 = true

是正确的..

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM