c#:“ System.Object”和“ object”之间的区别

c#:“ System.Object”和“ object”之间的区别,第1张

c#:“ System.Object”和“ object”之间的区别

string
是的别名
global::System.String
。它只是语法糖。两者 正好
在几乎所有情况下可以互换的,而且会在编译的代码没有什么区别。

就个人而言,我将别名用于变量名等,但是我将CLR类型名用于API中的名称,例如:

public int ReadInt32() // Good, language-neutralpublic int ReadInt() // Bad, assumes C# meaning of "int"

(请注意,返回类型实际上不是名称,它在元数据中被编码为一种类型,因此这里没有混淆。)

我知道一个可以使用而另一个(我知道)不能使用的地方是:

  • nameof
    禁止使用别名
  • 指定枚举基础基础类型时, 只能 使用别名


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/4935766.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-11-13
下一篇 2022-11-13

发表评论

登录后才能评论

评论列表(0条)

保存