4

私は持っている:

 public static int[] ArrayWorkings()

どこからでも MyClass.ArrayWorkings() で楽しく呼び出すことができます。ただし、次のようなパラメーターを必要とすることで、いくつかの追加機能を組み込みたいと考えています。

 public static int[] ArrayWorkings(int variable)

エラー No overload for method ArrayWorkings, takes 0 arguments が表示されます。どうしてこれなの?

4

1 に答える 1

10

1つのパラメーターを必要とするように関数を変更したため、パラメーターを渡さなかった古い関数呼び出しはすべて無効になりました。

このパラメータは絶対に必要ですか、それともデフォルト値ですか?デフォルトの場合は、デフォルトのパラメータまたはオーバーロードを使用します。

//`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 に答える