c# 不实现接口成员怎么办? 10
泛型类中有个方法用到了迭代器运行时总是出错该方法没有实现成员急急急usingSystem;usingSystem.Collections.Generic;usingSys...
泛型类中有个方法用到了迭代器 运行时总是出错 该方法没有实现成员 急急急
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
class program
{
public class Stack<T>:IEnumerable<T>
{
List<T> items = new List<T>();
int count=0;
public void push(T data)
{
items.Add (data);
count++;
}
public IEnumerable<T> GetEnumerator()
{
for (int i = count - 1; i >= 0; i--)
{
return items[i];
}
}
public IEnumerable<T> topenum
{
get
{
return this;
}
}
public IEnumerable<T> botenum
{
get {
for (int i = 0; i < count; i++)
yield return items[i];
}
}
}
public class function
{
public void Pushmultiple<T>(Stack<T> stack, params T[] lists)
{
foreach (T list in lists)
stack.push(list);
}
}
public static int Main()
{
Stack<int> stack=new Stack<int>();
function A = new function();
A.Pushmultiple(stack, 1, 2, 3, 4, 5, 6, 7, 8, 9);
return 1;
}
} 展开
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
class program
{
public class Stack<T>:IEnumerable<T>
{
List<T> items = new List<T>();
int count=0;
public void push(T data)
{
items.Add (data);
count++;
}
public IEnumerable<T> GetEnumerator()
{
for (int i = count - 1; i >= 0; i--)
{
return items[i];
}
}
public IEnumerable<T> topenum
{
get
{
return this;
}
}
public IEnumerable<T> botenum
{
get {
for (int i = 0; i < count; i++)
yield return items[i];
}
}
}
public class function
{
public void Pushmultiple<T>(Stack<T> stack, params T[] lists)
{
foreach (T list in lists)
stack.push(list);
}
}
public static int Main()
{
Stack<int> stack=new Stack<int>();
function A = new function();
A.Pushmultiple(stack, 1, 2, 3, 4, 5, 6, 7, 8, 9);
return 1;
}
} 展开
3个回答
展开全部
在GetEnumerator()方法中把return items[i];改成yield return items[i];
追问
改了 还是不行啊
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
接口的问题。 相信我
追问
该怎么改呢?
追答
2楼说的很清楚了
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询