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.
- Aggiungere elementi al membro m_coll per popolare la raccolta.
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;