C# 作为类对象的整数常量

C# 作为类对象的整数常量,c#,C#,下面代码中的整数4如何作为类\结构运行 class main { public void Main() { Console.WriteLine(4.ToString()); } } ---更新--- 事实上,我认为@Me.Name可能是对的。System.Int32实现了ToString,因此可以直接调用它。在这种情况下不需要拳击 如果我将System.Int32传递给一个需要对象参数的方法,那么它将被装箱 ---旧答案--- 它在飞 完全来自MSDN:

下面代码中的整数4如何作为类\结构运行

class main
{
    public void Main()
    {
        Console.WriteLine(4.ToString());
    }
}
---更新--- 事实上,我认为@Me.Name可能是对的。
System.Int32
实现了
ToString
,因此可以直接调用它。在这种情况下不需要拳击

如果我将
System.Int32
传递给一个需要
对象
参数的方法,那么它将被装箱

---旧答案--- 它在飞

完全来自MSDN:“装箱是将值类型转换为类型对象或此值类型实现的任何接口类型的过程。”

——更新--- 事实上,我认为@Me.Name可能是对的。
System.Int32
实现了
ToString
,因此可以直接调用它。在这种情况下不需要拳击

如果我将
System.Int32
传递给一个需要
对象
参数的方法,那么它将被装箱

---旧答案--- 它在飞


与MSDN完全相同:“装箱是将值类型转换为类型对象或此值类型实现的任何接口类型的过程。”

它被装箱到System.Int32,然后它是一个具有其属性/方法的对象。在C中,这是类型的自动转换实际上,我认为在不装箱的情况下直接在int结构上调用ToString,结果字符串是.net中的一个特殊类,它被传递给writeline方法。在谷歌搜索valuetype方法之后,我发现了这篇文章:,在页面的中间(只搜索tostring),它似乎确认调用4.tostring会阻止装箱(而writeline(4)会导致装箱),但4只是一个整数常量。如何将其用作结构或类并调用其上的函数?它被装箱到System.Int32,然后它是一个具有其属性/方法的对象。在C#中,这是类型的自动转换实际上,我认为ToString直接在int结构上调用,而无需装箱,结果字符串是.net中的一个特殊类,传递给writeline方法。在谷歌搜索valuetype方法之后,我发现了这篇文章:,在页面的中间(只搜索tostring),它似乎确认调用4.tostring会阻止装箱(而writeline(4)会导致装箱),但4只是一个整数常量。如何将其用作结构或类并调用其上的函数?但据说类类型是通过引用访问的,值类型是直接访问的,在这种情况下,值类型似乎也是通过引用访问的。@user1232138是的,这就是装箱的目的。值类型转换为对象,然后通过引用访问对象。但据说类类型是通过引用访问的,值类型是直接访问的,在这种情况下,值类型似乎也是通过引用访问的。@user1232138是的,这就是装箱的目的。值类型转换为对象,然后通过引用访问该对象。