Condividi tramite


Classe ICollectionOnSTLImpl

Questa classe fornisce metodi utilizzati da una classe di raccolta.

Sintassi

template <class T, class CollType, class ItemType, class CopyItem, class EnumType>
class ICollectionOnSTLImpl : public T

Parametri

T
Interfaccia di raccolta COM.

CollType
Classe contenitore della libreria standard C++.

ItemType
Tipo di elemento esposto dall'interfaccia del contenitore.

CopyItem
Classe di criteri di copia.

EnumType
Classe enumeratore compatibile con CComEnumOnSTL.

Membri

Metodi pubblici

Nome Descrizione
ICollectionOnSTLImpl::get__NewEnum Restituisce un oggetto enumeratore per l'insieme.
ICollectionOnSTLImpl::getcount Restituisce il numero di elementi nell'insieme.
ICollectionOnSTLImpl::get_Item Restituisce l'elemento richiesto dall'insieme.

Membri dati pubblici

Nome Descrizione
ICollectionOnSTLImpl::m_coll Raccolta.

Osservazioni:

Questa classe fornisce l'implementazione per tre metodi di un'interfaccia di raccolta: getcount, get_Item e get__NewEnum.

Per usare questa classe:

  • Definire (o prendere in prestito) un'interfaccia di raccolta che si vuole implementare.

  • Derivare la classe da una specializzazione di basata su questa interfaccia di ICollectionOnSTLImpl raccolta.

  • Usare la classe derivata per implementare qualsiasi metodo dall'interfaccia di raccolta non gestita da ICollectionOnSTLImpl.

Nota

Se l'interfaccia della raccolta è un'interfaccia doppia, derivare la classe da IDispatchImpl, passando la ICollectionOnSTLImpl specializzazione come primo parametro di modello se si vuole che ATL fornisca l'implementazione dei IDispatch metodi.

Per altre informazioni ed esempi, vedere Raccolte e enumeratori ATL.

Gerarchia di ereditarietà

T

ICollectionOnSTLImpl

Requisiti

Intestazione: atlcom.h

ICollectionOnSTLImpl::getcount

Questo metodo restituisce il numero di elementi nell'insieme.

STDMETHOD(getcount)(long* pcount);

Parametri

pcount
[out] Numero di elementi nella raccolta.

Valore restituito

Valore HRESULT standard.

ICollectionOnSTLImpl::get_Item

Questo metodo restituisce l'elemento specificato dall'insieme.

STDMETHOD(get_Item)(long Index, ItemType* pvar);

Parametri

Indice
[in] Indice in base 1 di un elemento nell'insieme.

pvar
[out] Elemento corrispondente a Index.

Valore restituito

Valore HRESULT standard.

Osservazioni:

L'elemento viene ottenuto copiando i dati nella posizione specificata in m_coll usando il metodo di copia della classe dei criteri di copia passata come argomento modello nella ICollectionOnSTLImpl specializzazione.

ICollectionOnSTLImpl::get__NewEnum

Restituisce un oggetto enumeratore per l'insieme.

STDMETHOD(get__NewEnum)(IUnknown** ppUnk);

Parametri

ppUnk
[out] Puntatore IUnknown di un oggetto enumeratore appena creato.

Valore restituito

Valore HRESULT standard.

Osservazioni:

L'enumeratore appena creato mantiene un iteratore nell'insieme originale, m_coll, (quindi non viene eseguita alcuna copia) e contiene un riferimento COM sull'oggetto raccolta per garantire che l'insieme rimanga attivo mentre sono presenti enumeratori in sospeso.

ICollectionOnSTLImpl::m_coll

Questo membro contiene gli elementi rappresentati dall'insieme.

CollType m_coll;

Vedi anche

Esempio di ATLCollections
Cenni preliminari sulla classe