我正在使用一种方法来执行某些操作,我希望通过在 C# 中使用可选参数只编写一次该方法,除了方法重载之外还有其他方法吗?
问问题
93320 次
5 回答
39
Visual Studio 2010 的新功能
例如
public void ExampleMethod(int required, string optionalstr = "default string",
int optionalint = 10)
{
}
于 2011-02-25T11:28:04.433 回答
14
看看下面的代码
使用的图书馆
using System.Runtime.InteropServices;
函数声明
private void SampleFunction([Optional]string optionalVar, string strVar)
{
}
在调用函数时,您可以这样做
SampleFunction(optionalVar: "someValue","otherValue");
或者
SampleFunction("otherValue");
如果有帮助请回复!:)
于 2012-11-06T06:35:04.120 回答
9
是的,使用可选参数(在 C# 4 中引入)。
public void ExampleMethod(int required, string optionalstr = "default string",
int optionalint = 10)
当您为形式参数提供默认值时,它变为可选的。
对于以前的版本,重载是唯一的选择。
于 2011-02-25T11:26:38.360 回答
4
它们已在 C# 2010 中引入(通常是带有 Framework 4.0 的 VS2010)。请参阅命名和可选参数(C# 编程指南)。
在以前的 C# 版本中,您会遇到重载(或参数数组)。
于 2011-02-25T11:26:33.673 回答
2
如果您使用C# 4.0,它是。
然后,您可以像这样定义您的方法:
public void Foo( int a = 3, int b = 5 ){
//at this point, if the method was called without parameters, a will be 3 and b will be 5.
}
于 2011-02-25T11:27:12.970 回答