本谜题呈现了两个容易令人混淆的构造器。Main方法调用了一个构造器,但是它调用的究竟是哪一个呢?该程序的输出取决于这个问题的答案。那么它会打印什么呢?甚至它是否合法?
class Confusing
{
Confusing(object o)
{
System.Console.WriteLine("object");
}
Confusing(double[] dArray)
{
System.Console.WriteLine("double array");
}
static void Main()
{
new Confusing(null);
}
}
C#解惑总目录
class Confusing
{
Confusing(object o)
{
System.Console.WriteLine("object");
}
Confusing(double[] dArray)
{
System.Console.WriteLine("double array");
}
static void Main()
{
new Confusing(null);
}
}
C#解惑总目录