在 Juval Lowy 的“C# 编码标准”中,可从 www.idesign.net 获得,建议使用 C# 预定义类型而不是 System
命名空间中的别名,例如:
object
不是Object
string
不是String
int
不是Int32
这样做有什么好处?它们有何不同?我在自己的编码中遵循了这个建议,但不知道它们有何不同。
最佳答案
它们意外不同的主要时间是当某人愚蠢到调用类型(或属性/字段/等)String
(例如)时,因为string
始终 指的是 global::System.String
,其中 String
可能是 YourNamespace.String
。
最接近 C# 别名的是 @string
,它往往像拇指一样突出。
我更喜欢 C# 别名。
顺便说一句,这里有一个有趣的方式来惹恼那些过度使用 dynamic
的人:
using dynamic = System.Object;
关于c# - 为什么应该使用 C# 预定义类型而不是系统命名空间中的别名,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3730756/