枚举器的迭代器模式
class MyClass
{
public IEnumrator<string> GetEnumerator()
{
return IteratorMethod();
}
public IEnumerator<string> IteratorMethod()
{
yield return ..;
}
}
Main
{
MyClass mc = new MyClass();
foreach(string x in mc)
.....
}
可枚举类型的迭代器模式
class MyClass
{
public IEnumerator<string> GetEnumerator()
{
return IteratorMethod().GetEnumerator();
}
public IEnumerable<string> IteratorMethod()
{
yield return ...;
}
}
Main
{
MyClass mc = new MyClass();
foreach(string x in mc)
......
foreach(string x in mc.IteratorMethod())
.....
}