IEnumerable<T>接口的问题

publicclassStarNode{。。。。。。}publicclassStarNodeCollection:IEnumerable<StarNode>{。。。。}如... public class StarNode{。。。。。。}

public class StarNodeCollection : IEnumerable<StarNode>
{。。。。}

如果StarNodeCollection没有继承IEnumerable<StarNode>接口,好像这条语句foreach (StarNode node in astar.Path){。。。}也能执行,那这个IEnumerable<StarNode>接口继承,有什么意义吗
展开
 我来答
sololive
2010-03-17 · TA获得超过394个赞
知道小有建树答主
回答量:353
采纳率:0%
帮助的人:112万
展开全部
在 C# 中,集合类不一定要从 IEnumerable 和 IEnumerator 继承以便与 foreach 兼容。只要此类具有必需的 GetEnumerator、MoveNext、Reset 和 Current()成员,就可 foreach 与一起使用。
继承自 IEnumerable<T> ,IEnumerator<T>可以与其他公共语言运行库兼容语言的 foreach 语句或等效项交互操作。否则只能在C#中使用.

参考资料: VS 2008 文档

推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式