N
nick_tucker
Hi,
Could someone tell me which of the following is correct if I want to
make the MyCollection class below enumerable
public class MyCollection:System.Collections.IEnumerable
{
private List<MyItem> m_MyItemsList
System.Collections.IEnumerator
System.Collections.IEnumerable.GetEnumerator()
{
return m_MyItemsList.GetEnumerator();
}
}
is this fine or should I use the generic IEnumerable interface i.e.
public class MyCollection:IEnumerable<MyItem>
{
private List<MyItem> m_MyItemsList
System.Collections.IEnumerator
System.Collections.IEnumerable.GetEnumerator()
{
return m_MyItemsList.GetEnumerator();
}
public IEnumerator<MyItem> GetEnumerator()
{
foreach (MyItem oItem in m_MyItemsList)
yield return oItem;
}
}
Are the two classes do the same thing when I the use foreach on
MyCollection class??
Thanks,
Nick
Could someone tell me which of the following is correct if I want to
make the MyCollection class below enumerable
public class MyCollection:System.Collections.IEnumerable
{
private List<MyItem> m_MyItemsList
System.Collections.IEnumerator
System.Collections.IEnumerable.GetEnumerator()
{
return m_MyItemsList.GetEnumerator();
}
}
is this fine or should I use the generic IEnumerable interface i.e.
public class MyCollection:IEnumerable<MyItem>
{
private List<MyItem> m_MyItemsList
System.Collections.IEnumerator
System.Collections.IEnumerable.GetEnumerator()
{
return m_MyItemsList.GetEnumerator();
}
public IEnumerator<MyItem> GetEnumerator()
{
foreach (MyItem oItem in m_MyItemsList)
yield return oItem;
}
}
Are the two classes do the same thing when I the use foreach on
MyCollection class??
Thanks,
Nick