【发布时间】:2012-10-24 13:49:31
【问题描述】:
在我拥有的一个对象中:
public IEnumerable<voiture> recup_voitures()
{
foreach (voiture v in _arrVCollection)
{
yield return (v);
}
}
voiture 是一个结构,_arrVCollection 是一个包含一些结构体的数组。
在我的主要课程中:
foreach (CarCollection.voiture o in collection.recup_voitures())
{
//some code to display the content of each struct
}
发生的情况是,如果我有一个长度为 5 且其中只有 1 个结构体的数组,它将显示代码 5 次而不是仅 1 次。我做错了什么?
【问题讨论】:
-
一个长度为 5 的数组,但里面只有 1 个 struct voiture 是什么意思?
-
voiture[] anArray = new voiture[5];然后anArray[0] = new voiture(); -
没有理由在那个方法中
yield return;你可以直接返回_arrVCollection,因为它实现了IEnumerable<T>。
标签: c# arrays oop struct iterator