IIterableConcept::GetIterator 方法 (dbgmodel.h)
可迭代概念上的 GetIterator 方法返回可用于循环访问对象的迭代器接口。 返回的迭代器必须记住传递给 GetIterator 方法的上下文对象。 它不会传递到迭代器本身上的方法。
语法
HRESULT GetIterator(
IModelObject *contextObject,
IModelIterator **iterator
);
参数
contextObject
实例 (此指针) 要为其获取迭代器。
iterator
此处返回循环访问实例对象的 IModelIterator 实现。
返回值
此方法返回指示成功或失败的 HRESULT。
注解
示例实现:
IFACEMETHOD(GetIterator)(_In_ IModelObject *pContextObject,
_COM_Outptr_ IModelIterator **ppIterator)
{
HRESULT hr = S_OK:
*ppIterator = nullptr;
// The iterator is not going to be passed the context object any more.
// If it needs this (to access fields for iteration, etc...), it must
// capture that in its own state.
ComPtr<MyObjectIterator> spIter;
hr = Microsoft::WRL::MakeAndInitialize<MyObjectIterator>(&spIter, pContextObject);
if (SUCCEEDED(hr))
{
*ppIterator = spIter.Detach();
}
return hr;
}
要求
要求 | 值 |
---|---|
Header | dbgmodel.h |