Freigeben über


_com_ptr_t-Klasse

Microsoft-spezifisch

Ein _com_ptr_t-Objekt kapselt einen COM-Schnittstellenzeiger und wird als "intelligenter" Zeiger bezeichnet. Diese Vorlagenklasse verwaltet die Zuordnung und Aufhebung der Zuordnung von Ressourcen mit Aufrufen der IUnknown-Memberfunktionen: QueryInterface, AddRef und Release.

Ein intelligenter Zeiger wird in der Regel durch die typedef-Definition verwiesen, die vom _COM_SMARTPTR_TYPEDEF-Makro bereitgestellt wird. Dieses Makro erwartet einen Schnittstellennamen und die IID und deklariert eine Spezialisierung von _com_ptr_t mit dem Namen der Schnittstelle sowie dem Suffix Ptr. Beispiel:

_COM_SMARTPTR_TYPEDEF(IMyInterface, __uuidof(IMyInterface));

deklariert die _com_ptr_t-Spezialisierung IMyInterfacePtr.

Ein Satz von Funktionsvorlagen, nicht Mitglieder dieser Vorlagenklasse, unterstützen Vergleiche mit einem intelligenten Zeiger auf der rechten Seite des Vergleichsoperators.

Konstruktion

_com_ptr_t

Erstellt ein _com_ptr_t-Objekt.

Vorgänge auf niedriger Stufe

AddRef

Ruft die AddRef-Memberfunktion von IUnknown für den gekapselten Schnittstellenzeiger auf.

Anfügen

Kapselt einen unformatierten Schnittstellenzeiger vom Typ dieses intelligenten Zeigers.

CreateInstance

Erstellt eine neue Instanz eines Objekts, dem ein CLSID oder ProgID übergeben wurde.

Trennen

Extrahiert den gekapselten Schnittstellenzeiger und gibt ihn zurück.

GetActiveObject

Wird einer vorhandenen Instanz eines Objekts mit CLSID oder ProgID angefügt.

GetInterfacePtr

Gibt den gekapselten Schnittstellenzeiger zurück.

QueryInterface

Ruft die QueryInterface-Memberfunktion von IUnknown für den gekapselten Schnittstellenzeiger auf.

Release

Ruft die Release-Memberfunktion von IUnknown für den gekapselten Schnittstellenzeiger auf.

Operatoren

operator =

Weist einem vorhandenen _com_ptr_t-Objekt einen neuen Wert zu.

Operatoren ==, !=, <, >, <=, >=

Vergleichen Sie das intelligente Zeigerobjekt mit einem anderen intelligenten Zeiger, unformatierten Schnittstellenzeiger oder NULL.

Extractors

Extrahieren Sie den gekapselten COM-Schnittstellenzeiger.

Anforderungen

Header: comip.h

Lib: comsuppw.lib oder comsuppwd.lib (Weitere Informationen finden Sie unter /Zc:wchar_t (wchar_t ist der systemeigene Typ).)

Siehe auch

Referenz

Compilerklassen für COM-Unterstützung