函数间调用不明确错误

本文关键字:错误 不明确 调用 函数 | 更新日期: 2023-09-27 18:02:07

我在面试中被问到这个问题,现在我知道我答错了。为什么这个程序显示函数之间的模糊调用,因此不编译?

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();
}

函数间调用不明确错误

语句Display(null);可以解释为Display(nullable int with null value)Display(string with null value)。因此出现了歧义调用错误。