1

私はインタビューでこの質問を受けましたが、今私は間違った答えをしたことを知っています. このプログラムが関数間のあいまいな呼び出しを示しているため、コンパイルされないのはなぜですか?

public static void Display(int? num) {
    Console.WriteLine(num);
}

public static void Display(string num) {
    Console.WriteLine(num);
}

static void Main() {
    Display(1);
    Display("1");
    Display(null);

    Console.ReadLine();
}
4

1 に答える 1

7

このステートメント は、またはDisplay(null);として解釈できます。したがって、あいまいな呼び出しエラーが発生します。Display(nullable int with null value)Display(string with null value)

于 2013-03-04T05:30:31.297 に答える