Klasa ICollectionOnSTLImpl
Ta klasa udostępnia metody używane przez klasę kolekcji.
Składnia
template <class T, class CollType, class ItemType, class CopyItem, class EnumType>
class ICollectionOnSTLImpl : public T
Parametry
T
Interfejs kolekcji COM.
Typ sortowania
Klasa kontenera biblioteki standardowej C++.
Typ elementu
Typ elementu uwidocznionego przez interfejs kontenera.
CopyItem
Klasa zasad kopiowania.
Typ wyliczenia
Klasa wyliczania zgodna z CComEnumOnSTL.
Elementy członkowskie
Metody publiczne
Nazwa/nazwisko | opis |
---|---|
ICollectionOnSTLImpl::get__NewEnum | Zwraca obiekt modułu wyliczającego dla kolekcji. |
ICollectionOnSTLImpl::getcount | Zwraca liczbę elementów w kolekcji. |
ICollectionOnSTLImpl::get_Item | Zwraca żądany element z kolekcji. |
Publiczne elementy członkowskie danych
Nazwa/nazwisko | opis |
---|---|
ICollectionOnSTLImpl::m_coll | Kolekcja. |
Uwagi
Ta klasa udostępnia implementację dla trzech metod interfejsu kolekcji: getcount, get_Item i get__NewEnum.
Aby użyć tej klasy:
Zdefiniuj (lub pożyczyj) interfejs kolekcji, który chcesz zaimplementować.
Utwórz klasę na podstawie specjalizacji opartej
ICollectionOnSTLImpl
na tym interfejsie kolekcji.Użyj klasy pochodnej, aby zaimplementować wszystkie metody z interfejsu kolekcji, które nie są obsługiwane przez
ICollectionOnSTLImpl
program .
Uwaga
Jeśli interfejs kolekcji jest podwójnym interfejsem, utwórz klasę z interfejsu IDispatchImpl, przekazując specjalizację ICollectionOnSTLImpl
jako pierwszy parametr szablonu, jeśli chcesz, aby ATL zapewnić implementację IDispatch
metod.
- Dodaj elementy do elementu członkowskiego m_coll , aby wypełnić kolekcję.
Aby uzyskać więcej informacji i przykładów, zobacz Kolekcje i moduły wyliczania ATL.
Hierarchia dziedziczenia
T
ICollectionOnSTLImpl
Wymagania
Nagłówek: atlcom.h
ICollectionOnSTLImpl::getcount
Ta metoda zwraca liczbę elementów w kolekcji.
STDMETHOD(getcount)(long* pcount);
Parametry
pcount
[out] Liczba elementów w kolekcji.
Wartość zwracana
Standardowa wartość HRESULT.
ICollectionOnSTLImpl::get_Item
Ta metoda zwraca określony element z kolekcji.
STDMETHOD(get_Item)(long Index, ItemType* pvar);
Parametry
Indeks
[in] Indeks oparty na 1 elemencie w kolekcji.
pvar
[out] Element odpowiadający indeksowi.
Wartość zwracana
Standardowa wartość HRESULT.
Uwagi
Element jest uzyskiwany przez skopiowanie danych na określoną pozycję w m_coll przy użyciu metody kopiowania klasy zasad przekazanej jako argument szablonu ICollectionOnSTLImpl
w specjalizacji.
ICollectionOnSTLImpl::get__NewEnum
Zwraca obiekt modułu wyliczającego dla kolekcji.
STDMETHOD(get__NewEnum)(IUnknown** ppUnk);
Parametry
ppUnk
[out] Wskaźnik IUnknown nowo utworzonego obiektu modułu wyliczającego.
Wartość zwracana
Standardowa wartość HRESULT.
Uwagi
Nowo utworzony moduł wyliczający utrzymuje iterator oryginalnej kolekcji , m_coll
(więc nie utworzono kopii) i przechowuje odwołanie COM do obiektu kolekcji, aby upewnić się, że kolekcja pozostaje aktywna, gdy istnieją wybitne moduły wyliczające.
ICollectionOnSTLImpl::m_coll
Ten element członkowski zawiera elementy reprezentowane przez kolekcję.
CollType m_coll;