Méthode IIterableConcept ::GetIterator (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 qui a été passé à la méthode GetIterator. Il ne sera pas transmis aux méthodes sur l’itérateur lui-même.
Syntaxe
HRESULT GetIterator(
IModelObject *contextObject,
IModelIterator **iterator
);
Paramètres
contextObject
Le instance (ce pointeur) pour lequel acquérir un itérateur.
iterator
Une implémentation d’IModelIterator qui itère l’objet instance est retournée ici.
Valeur retournée
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;
}
Configuration requise
Condition requise | Valeur |
---|---|
En-tête | dbgmodel.h |