Глядя на класс System.Type в окне определения кода, я не могу понять, как экземпляр этого класса неявно преобразуется в строку. Например, в следующем коде:
int foo = 0;
Console.WriteLine("Hi! I'm a type of type {0}", foo.GetType());
Как System.Type, полученный в результате GetType(), был неявно приведен к строке?