Question

What is the difference between creating Enumerable or Enumerator using Iterators in C#? I know that Iterators are used to create a private class that implements Enumerable or Enumerator...

Which way is better to create an enumerable type?

No correct solution

OTHER TIPS

Every type that implements the IEnumerable interface should implement a method GetEnumerator which returns a type that implements the IEnumerator interface. Then having an enumerator you can use the foreach statement, which in its essence implements the iterator pattern, to traverse the elements of a collection of your custom type.

For further clarification please take a look to the following links:

  1. IEnumerable
  2. IEnumerator
  3. Iterator Pattern

So in order to answer to your question, I have to say that we shouldn't try to compare the IEnumerable and IEnumerator. They both are used together, when we want to use the iterator pattern for a custom type.

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top