`Phone`应该是C#中的类还是结构?

时间:2016-06-02 08:18:49

标签: c# class struct

我的Phone类型有两个属性:NumberDescription(work,home,cell等)。我不知道它应该是class还是struct

根据MSDN

  

AVOID 定义结构,除非该类型具有以下所有特征:

     
      
  • 逻辑上代表单个值,类似于原始类型( int double 等)。
  •   
  • 实例大小小于16个字节。
  •   
  • 这是不可改变的。
  •   
  • 不必频繁装箱。
  •   

我确信它不会超过16个字节,但我不确定它是否符合其他要求。那我该使用哪个?

1 个答案:

答案 0 :(得分:3)

如有疑问,请使用class。无论如何,它在大多数情况下效果更好。 struct用于特殊情况 - 你知道什么时候打一个。