Udostępnij za pośrednictwem


_com_ptr_t — Klasa

Specyficzne dla firmy Microsoft

Obiekt _com_ptr_t hermetyzuje wskaźnik interfejsu COM i jest nazywany "inteligentnym" wskaźnikiem.Klasa szablonowa zarządza alokacją i dezalokacją zasobów za pomocą wywołań funkcji do funkcji składowych IUnknown: QueryInterface, AddRef, i Release.

Do wskaźnika inteligentnego z reguły odwołuje się przez definicje typedef dostarczone przez makro _COM_SMARTPTR_TYPEDEF.Makro przyjmuję nazwę interfejsu i identyfikator IID i deklaruje specjalizację _com_ptr_t z nazwą interfejsu plus przyrostek Ptr.Na przykład:

_COM_SMARTPTR_TYPEDEF(IMyInterface, __uuidof(IMyInterface));

deklaruje specjalizację _com_ptr_t o nazwie IMyInterfacePtr.

Zestaw szablonów funkcji, a nie elementy członkowskie klasy szablonowej, obsługują porównanie z inteligentnym wskaźnikiem znajdującym się po prawej stronie operatora porównania.

Konstrukcja

_com_ptr_t

Buduje _com_ptr_t obiektu.

Operacje niskiego poziomu

AddRef

Wywołuje funkcję składową AddRef interfejsu IUnknown na zhermetyzowanym wskaźniku interfejsu.

Dołącz

Hermetyzuje wskaźnik interfejsu pierwotnego o typie inteligentnego wskaźnika.

CreateInstance

Tworzy nowe wystąpienie obiektu, biorąc pod uwagę CLSID lub ProgID.

Odłącz

Wyodrębnia i zwraca zhermetyzowany wskaźnik interfejsu.

GetActiveObject

Dołącza do istniejącego wystąpienia obiektu biorąc pod uwagę CLSID lub ProgID.

GetInterfacePtr

Zwraca zhermetyzowany wskaźnik interfejsu.

QueryInterface

Wywołuje funkcję członkowską QueryInterface z interfejsu IUnknown na zhermetyzowanym wskaźniku interfejsu.

Release

Wywołuje funkcję członkowską Release z interfejsu IUnknown na zhermetyzowanym wskaźniku interfejsu.

Operatory

operator =

Przypisuje nową wartość do istniejącego _com_ptr_t obiektu.

operatory ==, !=, <,> , <=, >=

Porównuje obiekt wskaźnika inteligentnego do innego wskaźnika inteligentnego, wskaźnika interfejsu pierwotnego lub wartości NULL.

Ekstraktory

Wyodrębnia zhermetyzowany wskaźnik interfejsu COM.

Wymagania

Nagłówek: comip.h

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

Zobacz też

Informacje

Kompilator klas obsługi COM