gpt4 book ai didi

c# - 将空值传递给重载方法,其中 Object 和 String 作为 C# 中的参数

转载 作者:太空狗 更新时间:2023-10-29 21:01:56 25 4
gpt4 key购买 nike

我有两个重载方法,如下所示

 public class TestClass
{

public void LoadTest(object param)
{
Console.WriteLine("Loading object...");
}
public void LoadTest(string param)
{
Console.WriteLine("Loading string...");
}

}

像下面这样调用此方法后,输出将显示为Loading string... 请解释 .net 如何处理这种情况?

 class Program
{
static void Main(string[] args)
{
var obj=new TestClass();
obj.LoadTest(null);
// obj.LoadType(null);
Console.ReadLine();
}
}

最佳答案

C# 编译器尽可能采用最具体的重载。

由于string是一个object,它可以有null的值,编译器认为string更具体。

关于c# - 将空值传递给重载方法,其中 Object 和 String 作为 C# 中的参数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18310196/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com