2012-01-23 52 views
1

原谅我的无知,如果这是“一个基本的问题”#.NET方法.....c。与不同的输入

我有一个需要能够接受不同数量和类型的输入方法。例如

protected void example(int iVar, string sVar) 

& /或

protected voide example(int iVar, string sVar, double dVar) 

暂且不论问题/评论,如“为什么????”,有没有这样做,而无需编写的方法两次的简单/速记的方式?

任何帮助& /或指针将非常好地收到。

在此先感谢。

+1

一个选项是可选的参数。参考http://msdn.microsoft.com/en-us/library/dd264739.aspx –

回答

6

你可以让你的最后一个参数一个optional argument(C#4.0及以上):

protected void example(int iVar, string sVar, double dVar = 0.0) 

另外,第一种方法的实现可以简单地称为第二种:

protected void example(int iVar, string sVar) 
{ 
    example(iVar, sVar, 0.0); 
} 
+0

很好。谢谢,很好的解决方案 –

2

您可以为参数设置默认值将被使用,如果没有提供

protected void example(int iVar, string sVar, double dVar = 0) 
1

我相信你在寻找更多Named and Optional Arguments

这些为您提供了更多的方法/委托/构造参数和COM接口的灵活性。

+0

谢谢,将调查它。 –

1

您可以使用可选的参数:

protected void example(int? iVar, string? sVar, double? dVar = 0) 
+0

谢谢。没有意识到这一点。 –