_com_ptr_t – třída
Specifické pro Microsoft
Objekt _com_ptr_t zapouzdřuje ukazatel rozhraní MODELU COM a nazývá se "inteligentní" ukazatel. Tato třída šablony spravuje přidělení a uvolnění prostředků prostřednictvím volání funkcí členské IUnknown
funkce: QueryInterface
, AddRef
a Release
.
Inteligentní ukazatel je obvykle odkazován definicí typedef poskytovanou _COM_SMARTPTR_TYPEDEF makrem. Toto makro přebírá název rozhraní a IID a deklaruje specializaci _com_ptr_t s názvem rozhraní a příponou Ptr
. Příklad:
_COM_SMARTPTR_TYPEDEF(IMyInterface, __uuidof(IMyInterface));
deklaruje _com_ptr_t specializace IMyInterfacePtr
.
Sada šablon funkcí, ne členy této třídy šablony, podporuje porovnání s inteligentním ukazatelem na pravé straně relačního operátoru.
Stavebnictví
Název | Popis |
---|---|
_com_ptr_t | Vytvoří objekt _com_ptr_t. |
Operace nízké úrovně
Název | Popis |
---|---|
AddRef | AddRef Volá členské funkce IUnknown zapouzdřeného ukazatele rozhraní. |
Attach | Zapouzdřuje nezpracovaný ukazatel rozhraní tohoto typu inteligentního ukazatele. |
Instance CreateInstance | Vytvoří novou instanci objektu daného objektu CLSID nebo ProgID . |
Detach | Extrahuje a vrátí zapouzdřený ukazatel rozhraní. |
GetActiveObject | Připojí se k existující instanci objektu daného objektu CLSID nebo ProgID . |
GetInterfacePtr | Vrátí zapouzdřený ukazatel rozhraní. |
QueryInterface | QueryInterface Volá členské funkce IUnknown zapouzdřeného ukazatele rozhraní. |
Vydaná verze | Release Volá členské funkce IUnknown zapouzdřeného ukazatele rozhraní. |
Operátory
Název | Popis |
---|---|
operator = | Přiřadí novou hodnotu existujícímu objektu _com_ptr_t . |
operators ==, !=, <, , <>=, >= | Porovnejte objekt inteligentního ukazatele s jiným inteligentním ukazatelem, nezpracovaný ukazatel rozhraní nebo s hodnotou NULL. |
Extraktory | Extrahuje zapouzdřený ukazatel rozhraní COM. |
END Microsoft Specific
Požadavky
Header:<comip.h>
Lib: comsuppw.lib nebo comsuppwd.lib (další informace najdete v tématu /Zc:wchar_t (wchar_t Je nativní typ)