c#:“ System.Object”和“ object”之间的区别
在C#中,System.Object
在代码中使用而不是object
,System.String
而不是string
或等等之间是否有区别?还是仅仅是风格问题?
有一种理由为什么一种形式优于另一种形式?
回答:
string
是的别名global::System.String
。它只是语法糖。两者 正好
在几乎所有情况下可以互换的,而且会在编译的代码没有什么区别。
就个人而言,我将别名用于变量名等,但是我将CLR类型名用于API中的名称,例如:
public int ReadInt32() // Good, language-neutralpublic int ReadInt() // Bad, assumes C# meaning of "int"
(请注意,返回类型实际上不是名称,它在元数据中被编码为一种类型,因此这里没有混淆。)
我知道一个可以使用而另一个(我知道)不能使用的地方是:
nameof
禁止使用别名- 指定枚举基础基础类型时, 只能 使用别名
以上是 c#:“ System.Object”和“ object”之间的区别 的全部内容, 来源链接: utcz.com/qa/430522.html