我有代码
IEnumerable<card> any_object = new card[] { };
其中
card
是一个不实现 IEnumerable
的类。我无法理解这段代码如何工作?
来自 C# 规范:
在.NET Framework 2.0版本中,Array类实现了 System.Collections.Generic.IList, System.Collections.Generic.ICollection,以及 System.Collections.Generic.IEnumerable 泛型接口。
所以数组确实(隐式)继承自
IEnumerable<card>
。
我不太明白关于
card
类未实现 IEnumerable
的评论。 card
类不需要,它是您要为其分配变量的数组,它必须实现接口,而不是其中的值。