Notitie
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen u aan te melden of mappen te wijzigen.
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen om mappen te wijzigen.
Opmerking
De ATL (Active Template Library) wordt nog steeds ondersteund. We voegen echter geen functies meer toe of werken de documentatie bij.
Deze klasse biedt methoden die worden gebruikt door een verzamelingsklasse.
Syntaxis
template <class T, class CollType, class ItemType, class CopyItem, class EnumType>
class ICollectionOnSTLImpl : public T
Parameterwaarden
T
Een COM-verzamelingsinterface.
CollType
Een C++ Standard Library-containerklasse.
ItemType
Het type item dat wordt weergegeven door de containerinterface.
CopyItem-
Een kopieerbeleidsklasse.
EnumType
Een CComEnumOnSTL-compatibele enumerator-klasse.
Leden
Openbare methoden
| Naam | Description |
|---|---|
| ICollectionOnSTLImpl::get__NewEnum | Retourneert een enumerator-object voor de verzameling. |
| ICollectionOnSTLImpl::getcount | Retourneert het aantal elementen in de verzameling. |
| ICollectionOnSTLImpl::get_Item | Retourneert het aangevraagde item uit de verzameling. |
Publieke dataleden
| Naam | Description |
|---|---|
| ICollectionOnSTLImpl::m_coll | De verzameling. |
Opmerkingen
Deze klasse biedt de implementatie voor drie methoden van een verzamelingsinterface: getcount, get_Item en get__NewEnum.
Ga als volgt te werk om deze klasse te gebruiken:
Definieer (of leen) een verzamelingsinterface die u wilt implementeren.
Leid uw klas af van een specialisatie van op basis van
ICollectionOnSTLImpldeze verzamelingsinterface.Gebruik uw afgeleide klasse om methoden uit de verzamelingsinterface te implementeren die niet worden verwerkt door
ICollectionOnSTLImpl.
Opmerking
Als de verzamelingsinterface een dubbele interface is, leidt u uw klasse af van IDispatchImpl, waarbij u de ICollectionOnSTLImpl specialisatie doorgeeft als de eerste sjabloonparameter als u wilt dat ATL de implementatie van de IDispatch methoden biedt.
- Voeg items toe aan het m_coll lid om de verzameling te vullen.
Zie ATL Collections en Enumerators voor meer informatie en voorbeelden.
Overnamehiƫrarchie
T
ICollectionOnSTLImpl
Requirements
Koptekst: atlcom.h
ICollectionOnSTLImpl::getcount
Met deze methode wordt het aantal items in de verzameling geretourneerd.
STDMETHOD(getcount)(long* pcount);
Parameterwaarden
aantal
[uit] Het aantal elementen in de verzameling.
Retourwaarde
Een standaard HRESULT-waarde.
ICollectionOnSTLImpl::get_Item
Met deze methode wordt het opgegeven item uit de verzameling geretourneerd.
STDMETHOD(get_Item)(long Index, ItemType* pvar);
Parameterwaarden
Index
[in] De op 1 gebaseerde index van een item in de verzameling.
pvar
[uit] Het item dat overeenkomt met Index.
Retourwaarde
Een standaard HRESULT-waarde.
Opmerkingen
Het item wordt verkregen door de gegevens op de opgegeven positie in m_coll te kopiƫren met behulp van de kopieermethode van de kopieerbeleidsklasse die is doorgegeven als een sjabloonargument in de ICollectionOnSTLImpl specialisatie.
ICollectionOnSTLImpl::get__NewEnum
Retourneert een enumerator-object voor de verzameling.
STDMETHOD(get__NewEnum)(IUnknown** ppUnk);
Parameterwaarden
ppUnk
[uit] De IUnknown-aanwijzer van een nieuw gemaakt enumerator-object.
Retourwaarde
Een standaard HRESULT-waarde.
Opmerkingen
De zojuist gemaakte enumerator onderhoudt een iterator op de oorspronkelijke verzameling, m_coll(dus er wordt geen kopie gemaakt) en bevat een COM-verwijzing op het verzamelingsobject om ervoor te zorgen dat de verzameling actief blijft terwijl er uitstekende opsommingstekens zijn.
ICollectionOnSTLImpl::m_coll
Dit lid bevat de items die worden vertegenwoordigd door de verzameling.
CollType m_coll;