系统类型;隐式转换为字符串

时间:2009-11-08 22:46:27

标签: c# implicit-cast system.type

在查看代码定义窗口下的 System.Type 类时,我似乎无法理解如何将此类的实例隐式转换为字符串。例如,在以下代码中:

int foo = 0;
Console.WriteLine("Hi! I'm a type of type {0}", foo.GetType());

GetType()产生的System.Type是如何隐式地转换为字符串?

1 个答案:

答案 0 :(得分:4)

它没有被隐式地转换为字符串。它正在转换为Object(使用标准隐式引用转换),String.Format正确格式化 - 在这种情况下调用ToString

这是在编译时完成。您显示的代码调用Console.WriteLine(string, object)重载。