Partager via


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

Voir aussi

Interface IIterableConcept