我正在研究别人的代码,有一个方法是这样的:
public SomeClass DoSomething(string param1, [Optional, DefaultParameterValue("")] string optional)
为什么有人会使用这些属性而不是
public SomeClass DoSomething(string param1, string optional = "")
在行为等方面有什么不同吗?
最佳答案
例如,如果他们不使用 C# 4?我相信第二个版本将完全编译成第一个版本...
(我编译了它们并通过 ILDASM 运行它们——没有显着差异。)
关于c# - C# 4.0 中的 OptionalAttribute 和可选参数有什么区别,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9946919/