gpt4 book ai didi

c# - IEnumerator 目的

转载 作者:太空狗 更新时间:2023-10-29 22:20:41 29 4
gpt4 key购买 nike

我不太明白 C# Collections 中 IEnumerator 的用途是什么。它的用途是什么,为什么要使用它?

我试着在线查看 http://msdn.microsoft.com/en-us/library/system.collections.ienumerator.aspx但那篇文章没有多大意义。我问的原因是在 Unity3d 游戏引擎中,它与 yield 函数一起使用。我试图弄清楚使用 IEnumerator 的原因。

最佳答案

IEnumerator 接口(interface)在由类实现时允许使用内置的 foreach 语法对其进行迭代。

在需要为 IEnumerator 接口(interface)迭代的类中,为控制遍历对象的 GetEnumerator 函数定义了一个方法签名。

public IEnumerator<OrderLine> GetEnumerator()
{
for (int i=0;i<maxItems;i++)
{
yield return item[i];
}
}

正如您在本例中看到的,yield 语句让您可以将控制权返回给调用者,而不会丢失它在枚举中的位置。当调用者命中 foreach 循环的下一个增量时,控制将返回到 yield 语句之后的行。

关于c# - IEnumerator 目的,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4046379/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com