我有一个返回IEnumUnknown的COM对象。是否有任何东西可以将其变成STL样式的迭代器?这样我就可以做这样的事情:

IEnumUnkPtr pEnumUnk;
// ...something that fills in pEnumUnk...
MagicThing m(pEnumUnk);
std::for_each(m.begin(), m.end(), DoSomethingWithUnk);

...或类似的?

最佳答案

好像comSTL项目具有您所需要的:http://www.stlsoft.org/doc-1.9/classcomstl_1_1enumerator__sequence.html

10-07 19:16