クラスに機能を追加して、for-each ループで使用できるようにしたいと考えています。
ハッシュマップ、配列リスト、キュー、セットなどを書き、反復処理を行いました。現在、IUnknown クラスを実装してカスタム イテレータを構築する方法を探しています。
使い方はもうわかった
private objPeople as Collection
Public Property Get NewEnum() As IUnknown
Attribute NewEnum.VB_UserMemId = -4
Attribute NewEnum.VB_MemberFlags = "40"
Set NewEnum = objPeople.[_NewEnum]
End Property
しかし、これらの例はすべて Collection クラスに基づいているため、使用したくありません。
私が注目したいのは、IUnknown インターフェイスを実装しようとすることですが、その方法に関する参考文献が見つかりませんでした。
私は Java、C++、C# などで豊富な経験を持っているので、VBA でさえ、おそらくそのような API 呼び出しでさえ、それを実装する方法が必要であると思います。