Вопрос относительно IEnumerable и IEnumerator

Я использую следующий код, чтобы разрешить myClass использовать foreach. Но я новичок в программировании и мне трудно понять следующий код. Я описал свои проблемы в комментариях. Я был бы признателен за предоставленную информацию.

    public class MyClass : IEnumerable<string> 
    {  
    //1) What is IEnumerator for?
        // Whats the difference between IEnumerator and IEnumerable
    public IEnumerator<string> GetEnumerator()     
    {
             yield return "first";         
             yield return "second";     
    }      
    //2) What is it for?  It just calls above method 
   IEnumerator IEnumerable.GetEnumerator()
         {
             return GetEnumerator(); 
         } 
    }
   //3) Lastly what benefits I have from implementing genetic interface 
   //IEnumerable<string> instead of just IEnumerable
7
задан JYelton 28 December 2010 в 18:43
поделиться