Nuta
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować się zalogować lub zmienić katalog.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
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
ICollectionOnSTLImplna tym interfejsie kolekcji.Użyj klasy pochodnej, aby zaimplementować wszystkie metody z interfejsu kolekcji, które nie są obsługiwane przez
ICollectionOnSTLImplprogram .
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;