c# – System.Drawing.Point是一个值类型.为什么?
发布时间:2020-12-16 00:12:20 所属栏目:百科 来源:网络整理
导读:我读到System.Drawing.Point是一个值类型.我不明白.为什么? 解决方法 微软试图遵循这些规则,他们在MSDN中解释得很好,见 Choosing Between Classes and Structures( The book更好,因为它有很多有趣的评论) 即使Point不是这样的好例子: Struct应逻辑上表示单
我读到System.Drawing.Point是一个值类型.我不明白.为什么?
解决方法
微软试图遵循这些规则,他们在MSDN中解释得很好,见
Choosing Between Classes and Structures(
The book更好,因为它有很多有趣的评论)
即使Point不是这样的好例子: > Struct应逻辑上表示单个值(在这种情况下是一个位置,即使它有2个组件,但复数也可以分为2个部分,它们是结构的主要候选者) 正如我所说,我猜他们没有尊重“不可变”部分的事实是因为在编写System.Drawing时没有规则,因为图形操作可能对此非常敏感. 我不知道他们是否正确,也许他们测量了一些常见的算法,发现他们在分配临时对象和复制它们时失去了太多的性能.无论如何,只有在仔细测量类/结构的实际使用之后才能进行这种优化. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |