迭代得错误。。

using System;
using System.Collections;
using System.Collections.Generic;
public class Stack<T> : IEnumerable<T>
{
    
//数组,索引
    T[] items;
    
int idx;
    
public Stack()
    
{
        idx 
= 0;
        items 
= new T[10];

    }

    
public void Push(T t)
    
{
        items[idx
++= t;
    }

    
public T Pop()
    

        
return items[--idx];
    }



    
public IEnumerator<T> GetEnumerator()
    
{
        
for (int i = items.Length - 1; i >= 0--i)
        
{
            
yield return items[i];
        }

    }


}

class App
{
    
static void Main()
    
{
        Stack
<int> stack = new Stack<int>();
        stack.Push(
100);
        stack.Push(
101);
        stack.Push(
103);
        stack.Push(
104);
        stack.Push(
105);
        stack.Push(
106);
        stack.Push(
107);
        stack.Push(
108);
        stack.Push(
109);
        stack.Push(
110);
        stack.Push(
111);
        stack.Push(
112);
        
foreach (int i in stack)
        
{
            Console.WriteLine(i.ToString());
        }

        Console.Read();

    }

}
提示错误:错误 1 “Stack<T>”不会实现接口成员“System.Collections.IEnumerable.GetEnumerator()”。“Stack<T>.GetEnumerator()”或者是静态、非公共的,或者有错误的返回类型。 C:\Documents and Settings\Administrator\My Documents\Visual Studio 2005\Projects\ConsoleApplication2\ConsoleApplication2\Program.cs 4 14 ConsoleApplication2
posted @ 2008-04-06 21:47  roboth  阅读(287)  评论(2)    收藏  举报