class Person { public string FirstName { get; set; } public string LastName { get; set; } public Person(string firstName, string lastName) { FirstName = firstName; LastName = lastName; } public override string ToString() { return FirstName + " " + LastName; } } class People : IEnumerable<Person> { Person[] people; public People(Person[] people) { this.people = people; } public IEnumerator<Person> GetEnumerator() { for (int i = 0; i < people.Length; i++) { yield return people[i]; } } IEnumerator IEnumerable.GetEnumerator() { return GetEnumerator(); } }
People
IEnumerable
public IEnumerator<Person> GetEnumerator() { for (int i = 0; i < people.Length; i++) { yield return people[i]; } } IEnumerator IEnumerable.GetEnumerator() { return GetEnumerator(); }
public override GetEnumerator() { //blah blah }
foreach
override
var
This content, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)