Bas*_*mme 3 .net c# types
我读到System.Drawing.Point是一个值类型.我不明白.为什么?
Jul*_*lia 9
微软试图遵循这些规则,他们在MSDN中很好地解释它们,参见在类和结构之间选择(这本书更好,因为它有很多有趣的评论)
即使Point不是这样的好例子:
正如我所说,我猜他们没有尊重"不可变"部分这一事实是因为在编写System.Drawing时没有规则,因为图形操作可能对此非常敏感.
我不知道他们是否正确,也许他们测量了一些常见的算法,发现他们在分配临时对象和复制它们时失去了太多的性能.无论如何,只有在仔细测量类/结构的实际使用之后才能进行这样的优化.
归档时间:
16 年,6 月 前
查看次数:
1848 次
最近记录:
15 年,2 月 前