_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
, AddRef
i 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ż
Opinia
https://aka.ms/ContentUserFeedback.
Dostępne już wkrótce: W 2024 r. będziemy stopniowo wycofywać zgłoszenia z serwisu GitHub jako mechanizm przesyłania opinii na temat zawartości i zastępować go nowym systemem opinii. Aby uzyskać więcej informacji, sprawdź:Prześlij i wyświetl opinię dla