IEnumerable - Provides an IEnumerator that can traverse a collection
public IEnumerator GetEnumerator();
IEnumerator - Methods to traverse a collection
public object Current; public bool MoveNext(); // Ignore the next method, it should be marked as [Obsolete], just use GetIterator() public void Reset();
This code shows in a simplistic manner how foreach is implemented using iterators. See here for more details
// foreach Implementation IEnumerable enumerable = (IEnumerable)targObject; IEnumerator it = enumerable.GetEnumerator(); while(it.MoveNext()) { DoSomething(it.Current); }
No comments:
Post a Comment