4

我有:

 public static int[] ArrayWorkings()

我可以在任何地方用 MyClass.ArrayWorkings() 愉快地调用它。但是我想通过需要一个参数来构建一些额外的功能,例如:

 public static int[] ArrayWorkings(int variable)

我收到错误 ArrayWorkings 方法没有重载,需要 0 个参数。为什么是这样?

4

1 回答 1

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
}
于 2012-06-27T00:12:40.177 回答