我有:

 public static int[] ArrayWorkings()

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

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

最佳答案

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

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

//`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
}

关于c# - 方法没有重载,需要 0 个参数?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/11217681/

10-10 10:24