VisualStuidio2013/Fw4.0/VB
Public Class MyCollection Implements IEnumerable(Of String) Private _items As New List(Of String) Public Iterator Function GetEnumerator() As IEnumerator(Of String) _ Implements IEnumerable(Of String).GetEnumerator For Each s As String In Me._items Yield s Next End Function Public Function GetEnumerator1() As IEnumerator _ Implements IEnumerable.GetEnumerator Return GetEnumerator() End Function End Class自作コレクションクラスをForEachでクルクルまわせたり、Linqで使えるようにするためにIEnumerable(Of T)を実装させます。 IEnumerable(Of T)を実装すると、GetEnumerator()メソッドとGetEnumerator1()メソッドを実装する必要があります。 GetEnumerator1()メソッドは、もう一方のGetEnumerator()を返すように実装します。 GetEnumerator()メソッドは、Yeildを使用できるようにIteratorキーワードを付けます。 Public Iterator Function GetEnumerator() As IEnumerator(Of … あとはコレクションの要素をクルクル回して1コづつYeildで返してあげればOKです。
0 件のコメント:
コメントを投稿