带有以下代码段:
public static void Main()
{
int v = 2;
Console.WriteLine("number" + "," + v);
}
显然,在对v
的调用中,最好将v.ToString()
替换为WriteLine()
以防止将值类型装箱。但是,调用ToString()
仍然会在堆上分配一个对象,就像对值类型进行装箱一样。
那么使用v.ToString()
而不是将其装箱有什么好处?
更新:看起来,在将值传递给int.ToString()
之前(无论是否自己显式调用string.Concat()
)之前,都已调用[C0]:int.ToString()