通常使用C#类型别名而不是CTS系统。*类型(int
而不是Int32
和string
而不是String
)。但是,我不清楚在这种情况下使用什么来调用类型的静态方法:别名或系统类型。
Microsoft似乎没有定义任何使用别名而不是系统类型的指南。但在MSDN中,别名用于变量,CTS等效项用于静态调用。例如MSDN: Parsing Numeric Strings
int number;
Int32.TryParse(value, out number);
StyleCop在SA1121中定义相反的方法 - 始终使用别名。所以int.Parse
没问题,而Int32.Parse
则没有。
这个问题属于风格问题(在我看来)。但我不明白使用CTS类型进行静态调用的理由。
答案 0 :(得分:8)
我个人总是使用完整的类名来进行静态方法调用。这强调了这样一个事实:它们实际上是包含代码片段的类,而不是别名所暗示的最简单的可能(原始)数据。
我总是使用变量的别名。
答案 1 :(得分:5)
绝对没有技术差异,只是编码风格。我个人提倡int.Parse
,但有许多着名的experts更喜欢相反的情况。
答案 2 :(得分:1)
我强烈建议您使用int.Parse(...)
代替int32
。如果您想要某人
读取你在64位机器上运行它的代码,并且他不知道int32
和int
只是别名,这会让他做错了假设。
换句话说,即使从功能的角度来看也没有任何区别,为了避免代码含糊不清(推测可能是32位代码),我建议使用int.Parse(..)