Questo quiz è ispirato da un bellissimo post di Cyrus Najmabadi (C# IDE Team) - che solo a maggio ha postato nel suo blog per 73 volte! :-)
using System;
class C1
{
public static void M(Weird w)
{
w.ToString();
Console.WriteLine(w.ToString());
}
}
class C2
{
public static void M(Weird w)
{
NewMethod(w);
Console.WriteLine(w.ToString());
}
private static void NewMethod(Weird w)
{
w.ToString();
}
}
struct Weird
{
private int _i;
public Weird(int i)
{
_i = i;
}
public override string ToString()
{
_i++;
return _i.ToString();
}
}
class Foo
{
static void Main()
{
Weird w = new Weird(0);
C1.M(w);
C2.M(w);
Console.Read();
}
}
Cosa viene visualizzato a console?