为什么WinRT中的String类不实现IEnumerable <char> </char>

时间:2013-05-08 11:12:21

标签: .net windows-runtime

似乎WinRT版本的.NET中的字符串类没有实现IEnumerable。我想知道为什么他们会这样做呢?

1 个答案:

答案 0 :(得分:5)

你的“为什么?” David Kean下面的this answer评论回答:

  

我们为什么删除字符串上的方法的原因不是因为   WinRT,而是因为我们选择了这个机会删除   我们后悔添加的方法,或者   限制了我们围绕未来创新的计划。

     

String.GetEnumerator属于“我们不会添加它”的桶   我们重新开始“。在.NET Framework中,它返回CharEnumerator,它   迭代字符串是非常低效的(它导致一个   为每个循环分配),并为两个C#的foreach代码吐出   和VB自1.0天以来没有使用过这种类型。 (他们现在变成了一个foreach   在一个字符串上有效地使用字符串的“for循环”   索引)。虽然一些删除可能看起来是任意的,但每一个   删除是一个慎重的选择,并落入其中一个桶   上方。