首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >Lookup<TKey、TElement>类没有公共构造函数有什么好的理由吗?

Lookup<TKey、TElement>类没有公共构造函数有什么好的理由吗?
EN

Stack Overflow用户
提问于 2015-10-27 12:50:27
回答 1查看 588关注 0票数 0

为什么System.Linq.Lookup<TKey, TElement>类中没有公共构造函数?

.net框架设计人员将Lookup构造函数私有化的意图是什么?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2015-10-27 12:53:58

有两个可能的原因:

  1. 因为它是不可变的,所以所有初始化都必须在构造时完成,因此在这种情况下,工厂方法(Enumerable.ToLookup)比复杂的公共构造函数更合适。
  2. 因为工厂方法足以创建Lookup,所以不需要构造函数。

最后,设计师不必为不做某事辩护。当工厂方法存在以创建构造函数时,我几乎看不到构造函数的价值。如果您觉得有一种用例,构造函数的价值超过了添加一个构造函数的成本(包括设计、构建、测试、文档化和支持),那么可以在http://connect.microsoft.com上提出建议。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/33368450

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档