_com_ptr_t — Klasa

Specyficzne dla firmy Microsoft

Obiekt _com_ptr_t hermetyzuje wskaźnik interfejsu COM i jest nazywany wskaźnikiem "inteligentnym". Ta klasa szablonu zarządza alokacją zasobów i cofaniem alokacji za pomocą wywołań funkcji do IUnknown funkcji składowych: QueryInterface, AddRefi Release.

Inteligentny wskaźnik jest zwykle przywołyany przez definicję typedef dostarczoną przez makro _COM_SMARTPTR_TYPEDEF. To makro przyjmuje nazwę interfejsu i identyfikator IID i deklaruje specjalizację _com_ptr_t z nazwą interfejsu oraz sufiksem Ptr. Przykład:

_COM_SMARTPTR_TYPEDEF(IMyInterface, __uuidof(IMyInterface));

deklaruje specjalizację IMyInterfacePtr_com_ptr_t .

Zestaw szablonów funkcji, a nie składowych tej klasy szablonu, obsługuje porównania z inteligentnym wskaźnikiem po prawej stronie operatora porównania.

Budownictwo

Nazwa/nazwisko opis
_com_ptr_t Tworzy obiekt _com_ptr_t.

Operacje niskiego poziomu

Nazwa/nazwisko opis
Addref AddRef Wywołuje funkcję IUnknown składową w hermetyzowanym wskaźniku interfejsu.
Attach Hermetyzuje nieprzetworzone wskaźniki interfejsu tego typu inteligentnego wskaźnika.
Createinstance Tworzy nowe wystąpienie obiektu na danym CLSID obiekcie lub ProgID.
Detach Wyodrębnia i zwraca hermetyzowany wskaźnik interfejsu.
Getactiveobject Dołącza do istniejącego wystąpienia obiektu danego obiektu CLSID lub ProgID.
GetInterfacePtr Zwraca hermetyzowany wskaźnik interfejsu.
QueryInterface QueryInterface Wywołuje funkcję IUnknown składową w hermetyzowanym wskaźniku interfejsu.
Wersja Release Wywołuje funkcję IUnknown składową w hermetyzowanym wskaźniku interfejsu.

Operatory

Nazwa/nazwisko opis
operator = Przypisuje nową wartość do istniejącego obiektu _com_ptr_t .
operatory ==, !=, <, <>=, >= = Porównaj obiekt inteligentnego wskaźnika z innym inteligentnym wskaźnikiem, nieprzetworzonym wskaźnikiem interfejsu lub wartością NULL.
Ekstraktory Wyodrębnij hermetyzowany wskaźnik interfejsu COM.

END Microsoft Specific

Wymagania

Header:<comip.h>

Lib: comsuppw.lib lub comsuppwd.lib (zobacz /Zc:wchar_t (wchar_t Jest typem natywnym), aby uzyskać więcej informacji)

Zobacz też

Kompilator klas obsługi COM