方法没有重载,需要0参数?

时间:2012-06-27 00:10:31

标签: c#

我有:

 public static int[] ArrayWorkings()

我可以随时随地使用MyClass.ArrayWorkings()来称呼它。但我希望通过需要一个参数来构建一些额外的功能,例如:

 public static int[] ArrayWorkings(int variable)

我得到方法ArrayWorkings的错误没有重载,接受0个参数。这是为什么?

1 个答案:

答案 0 :(得分:10)

您将函数更改为需要一个参数...所以现在所有未传递参数的旧函数调用都是无效的。

这个参数绝对必要,还是默认值?如果是默认值,则使用默认参数或重载:

//`variable` will be 0 if called with no parameters
public static int[] ArrayWorkings(int variable=0)  

// pre-C# 4.0
public static int[] ArrayWorkings()
{
    ArrayWorkings(0);
}

public static int[] ArrayWorkings(int variable)
{
    // do stuff
}