常见迭代器模式

枚举器的迭代器模式

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())

  .....


}

上一篇:缓存


下一篇:P1964 【mc生存】卖东西