什么时候使用结构?

什么时候使用结构?

什么时候应该在C#中使用struct而不是class?我的概念模型是,当项目是仅仅是值类型的集合。..一种逻辑上把它们结合在一起的方法。

我碰到了这些规则这里:

  • 结构应该表示单个值。
  • 结构的内存占用应该小于16字节。
  • 创建后不应更改结构。

这些规则有效吗?结构在语义上是什么意思?


慕后森
浏览 564回答 3
3回答

牧羊人nacy

我不同意原文的规定。以下是我的规则:1)在数组中存储时,可以使用structs来提高性能。(另见什么时候构造答案?)2)在向C/C+/从C/C+传递结构化数据的代码中需要它们3)除非需要,否则不要使用结构:它们的行为不同于“正常对象”(参考类型)在赋值和作为参数传递时,这可能导致意外的行为;如果查看代码的人不知道他们在处理结构,这就特别危险。他们不能继承。将结构作为参数传递比类更昂贵。
打开App,查看更多内容
随时随地看视频慕课网APP