C#中的不可变数据结构

doc*_*ess 9 c# immutability

我正在阅读Eric Lippert博客中关于不可变数据结构的一些条目,我开始思考,为什么C#没有内置到标准库中?对于明显重用的东西而言,它似乎并不是已经开箱即用的.

编辑:我觉得我的问题可能会被误解.我不是问如何在C#中实现一个,我问为什么一些基本的数据结构(Stack,Queue等)还没有作为不可变的变体.

And*_*ott 7

它现在.

.NET刚刚发布了他们的第一个不可变集合,我建议你试试.


Sco*_*sen 2

我将引用您一直在阅读的Eric Lippert博客中的内容:

因为没有人设计、指定、实施、测试、记录和交付该功能。

换句话说,除了没有足够高的价值或优先级之外,没有其他原因可以在他们正在做的所有其他事情之前完成。

  • 好吧,但是有人设计、指定、实现、测试、记录和交付了大量可变数据结构,所以询问他们为什么做出这个决定是一个非常明智的问题。 (2认同)