IIterableConcept ::GetIterator, méthode (dbgmodel.h)
La méthode GetIterator sur le concept itérable retourne une interface d’itérateur qui peut être utilisée pour itérer l’objet. L’itérateur retourné doit mémoriser l’objet de contexte passé à la méthode GetIterator. Elle ne sera pas transmise aux méthodes sur l’itérateur lui-même.
Syntaxe
HRESULT GetIterator(
IModelObject *contextObject,
IModelIterator **iterator
);
Paramètres
contextObject
Instance (ce pointeur) pour laquelle acquérir un itérateur.
iterator
Une implémentation de IModelIterator qui itère l’objet d’instance est retournée ici.
Valeur de retour
Cette méthode retourne HRESULT qui indique la réussite ou l’échec.
Remarques
exemple d’implémentation :
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;
}
Exigences
Exigence | Valeur |
---|---|
d’en-tête | dbgmodel.h |