如果我查看 .NET 类型System.Version的成员,创建值类型(C# 结构)而不是引用类型(类)可能是一个更好的主意。
Microsoft 决定以这种方式实现该类型的原因或论据可能是什么?它只是一种“错误”/错误/无关紧要还是“功能”(换句话说:“真正想要和有用”?
有像Parse()和TryParse()这样的方法,它们是典型的值类型,例如System.Int32、System.Double或System.Guid。System.Version的属性仅存储短值和整数值(s. System.TimeSpan),类型本身是可比较的(使用运算符)并且作为结构,可能不需要使其可克隆。
我对这种“现状”没有任何反对意见,只是为了满足我的好奇心;-)
编辑:添加了对System.TimeSpan的比较。