考虑以下方法示例:
public void MyMethod (string par1, bool par2 = "true", string par3="")
{
}
现在假设我调用 MyMethod 并将 par3 的值设置为“IamString”。
如果不将 par2 的值设置为 true 或 false,我怎么能做到这一点?
我基本上想将 par2 值保留为默认值。
我问这个是因为在 Flash 的 ActionScript 中可以通过使用关键字 default 来做到这一点,所以我可以调用 MyMethod ("somestring", default, "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
谈到默认值,您还可以使用它来获取特定类型的默认值:
默认(T)
关于C# - 如何跳过具有默认值的参数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11901546/