IIterableConcept::GetIterator-Methode (dbgmodel.h)
Die GetIterator-Methode für das iterierbare Konzept gibt eine Iteratorschnittstelle zurück, die zum Durchlaufen des Objekts verwendet werden kann. Der zurückgegebene Iterator muss sich an das Kontextobjekt erinnern, das an die GetIterator-Methode übergeben wurde. Sie wird nicht an Methoden im Iterator selbst übergeben.
Syntax
HRESULT GetIterator(
IModelObject *contextObject,
IModelIterator **iterator
);
Parameter
contextObject
Der instance (dieser Zeiger), für den ein Iterator abgerufen werden soll.
iterator
Hier wird eine Implementierung von IModelIterator zurückgegeben, die das instance-Objekt durchläuft.
Rückgabewert
Diese Methode gibt HRESULT zurück, was auf Erfolg oder Fehler hinweist.
Hinweise
Beispielimplementierung:
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;
}
Anforderungen
Anforderung | Wert |
---|---|
Header | dbgmodel.h |