有关C#2.0泛型实现接口方法的问题

YapEro 2006-08-28 09:59:43
新建一个类,继承IEnumerable<T>,接口只有一个方法IEnumerator<T> GetEnumerator(),我用int替换泛型T,编译之后总是提示IEnumerator<T> GetEnumerator()方法未实现。难道这样public IEnumerator<int> GetEnumerator(){}不行吗?
我又试了其他的泛型接口,凡是用具体数据类型实现泛型接口方法都会有这个错误提示,接口方法未实现。请教应该如何用具体数据类型实现泛型接口方法?

示例代码如下
public class Chesses:IEnumerable<int>
{
int[] chesses;
int i;
public Chesses(int[] chesses)
{
this.chesses = chesses;
}

public IEnumerator<int> GetEnumerator()
{
for (i = 0; i < chesses.GetLength(0); i++)
{
yield return chesses[i];
}
}
}
...全文
181 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
huangsuipeng 2006-08-28
  • 打赏
  • 举报
回复
由于IEnumerable<int>继承了IEnumerable
因此还要添加一个方法提供一个对应的显式接口实现.

public IEnumerator IEnumerable.GetEnumerator()
{
return GetEnumerator();//你已经编写了

}
YapEro 2006-08-28
  • 打赏
  • 举报
回复
谢了

17,739

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 .NET Framework
社区管理员
  • .NET Framework社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧