繁体   English   中英

默认参数值改为另一个参数

[英]Default Parameter Value to Another Parameter

我想做如下的事情:

private void MyMethod(int param1, int param2 = param1){}

目的是使param2可选,并且在未指定param2的情况下,为其提供与第一个参数相同的值。

这可能吗?

我知道我可以使用可为空的类型,并在方法主体中进行检查和赋值。 我也知道我可以通过重载来实现。 我特别想知道签名中是否可行。

我正在使用.Net 4.0

谢谢

这可能吗?

否。参数的默认值必须是以下之一:

  • 编译时间常数(例如,数字或字符串文字)
  • 参数类型的默认值,例如default(Foo)default (从C#7.1开始)
  • 值类型的“零”值,例如new Guid()

不幸的是,这是非常严格的。

暂无
暂无

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

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