大写Object和小写对象有什么区别?

时间:2012-07-05 20:46:37

标签: c# class types

  

可能重复:
  c#: difference between “System.Object” and “object”

虽然我目前正在使用C#,但这个问题可能适用于其他语言。

调用Objectobject之间有什么区别吗?具体来说,我正在使用构造函数创建Dictionary的实例:

Dictionary<String, Object> foo = new Dictionary...

IDE会自动填入new Dictionary<string, object>。我回去改变了我的初步声明,但它让我感到疑惑。

  • 当我使用大写StringObject与小写stringobject时,是否有任何不良反应?
  • 我假设大写是指类(因此我可以访问类方法),而小写只是指类型。这是真的吗?

2 个答案:

答案 0 :(得分:16)

object是System.Object的关键字(别名),同样适用于string

编译时,它将完全相同。

MSDN page for object上,它说明了以下内容:

  

对象类型是.NET Framework中System.Object的别名。   您可以将任何类型的值分配给object类型的变量。

您可以在MSDN上的C#中找到所有关键字的长列表。

答案 1 :(得分:0)

有些类有别名,如object,string,int,short等等。它们都内部映射到带有大写字母的真实类。

请注意,一些罕见的类型取决于平台。例如。在x86上,IntPtr存储32位值,而在x64上存储64位值。

简称到目前为止我知道总是映射到Int16并且长到Int64。