什么时候应该使用.net框架数据类型和语言数据类型?

bq8i3lrv  于 2022-12-14  发布在  .NET
关注(0)|答案(4)|浏览(191)

何时应用途:

Int32 myint = 0;//Framework data type

对比

int myint = 0;//C# language data type

有什么相似之处/不同之处?我似乎记得有人告诉我有性能差异?这是真的吗?

vlju58qv

vlju58qv1#

在C#中,语言定义的数据类型关键字只是它们各自BCL类型的别名,所以intInt32完全相同,longInt64相同,等等。
不过,一般来说,我认为最好还是使用语言定义的类型名,因为这些别名是由编译器解析的,所以绝对没有性能上的差异。

ifmq2ha2

ifmq2ha22#

intSystem.Int32的别名,stringSystem.String的别名。没有区别。
也就是说,最好使用intstring,而不是它们的System等价物,主要是为了可读性。如果使用StyleCop这样的源代码样式检查器,它会强制将所有System.StringSystem.Int32声明替换为它们的较短等价物。

fquxozlt

fquxozlt3#

我曾经提倡使用C#语言别名而不是CLR类型,但在我听说Jeffery Richter在他的书CLR via C#中提倡CLR类型后,我改变了我对使用CLR类型的偏好,这是我第一次接触CLR的其他开发人员,能够看到CLR而不是C#是关注的中心,以及引用和值类型之间的颜色线索有助于快速地可视化地解析代码。

相关问题