Freigeben über


ComPtrRef-Klasse

Unterstützt die WRL-Infrastruktur und soll nicht direkt aus Ihrem Code verwendet werden.

Syntax

template <typename T>
class ComPtrRef : public ComPtrRefBase<T>;

Parameter

T
Ein ComPtr<T-Typ> oder ein von ihr abgeleiteter Typ, nicht nur die Schnittstelle, die durch die ComPtr.

Hinweise

Stellt einen Verweis auf ein Objekt vom Typ ComPtr<T>dar.

Member

Öffentliche Konstruktoren

Name Beschreibung
ComPtrRef::ComPtrRef Initialisiert eine neue Instanz der ComPtrRef Klasse vom angegebenen Zeiger auf ein anderes ComPtrRef Objekt.

Öffentliche Methoden

Name Beschreibung
ComPtrRef::GetAddressOf Ruft die Adresse eines Zeigers auf die Schnittstelle ab, die durch das aktuelle ComPtrRef Objekt dargestellt wird.
ComPtrRef::ReleaseAndGetAddressOf Löscht das aktuelle ComPtrRef Objekt und gibt einen Zeiger auf die Schnittstelle zurück, die durch das ComPtrRef Objekt dargestellt wurde.

Öffentliche Operatoren

Name Beschreibung
ComPtrRef::operator InterfaceType** Löscht das aktuelle ComPtrRef Objekt und gibt einen Zeiger auf die Schnittstelle zurück, die durch das ComPtrRef Objekt dargestellt wurde.
ComPtrRef::operator T* Gibt den Wert des ptr_ Datenelements des aktuellen ComPtrRef -Objekts zurück.
ComPtrRef::operator void** Löscht das aktuelle ComPtrRef Objekt, wandelt den Zeiger auf die Schnittstelle um, die ComPtrRef vom Objekt als Zeiger-zu-Zeiger voiddargestellt wurde, und gibt dann den Umwandlungszeiger zurück.
ComPtrRef::operator* Ruft den Zeiger auf die Schnittstelle ab, die durch das aktuelle ComPtrRef Objekt dargestellt wird.
ComPtrRef::operator== Gibt an, ob zwei ComPtrRef-Objekte gleich sind.
ComPtrRef::operator!= Gibt an, ob zwei ComPtrRef-Objekte ungleich sind.

Vererbungshierarchie

ComPtrRefBase

ComPtrRef

Anforderungen

Header: client.h

Namespace: Microsoft::WRL::D etails

ComPtrRef::ComPtrRef

Unterstützt die WRL-Infrastruktur und soll nicht direkt aus Ihrem Code verwendet werden.

ComPtrRef(
   _In_opt_ T* ptr
);

Parameter

ptr
Der zugrunde liegende Wert eines anderen ComPtrRef Objekts.

Hinweise

Initialisiert eine neue Instanz der ComPtrRef Klasse vom angegebenen Zeiger auf ein anderes ComPtrRef Objekt.

ComPtrRef::GetAddressOf

Unterstützt die WRL-Infrastruktur und soll nicht direkt aus Ihrem Code verwendet werden.

InterfaceType* const * GetAddressOf() const;

Rückgabewert

Adresse eines Zeigers auf die Schnittstelle, die durch das aktuelle ComPtrRef Objekt dargestellt wird.

Hinweise

Ruft die Adresse eines Zeigers auf die Schnittstelle ab, die durch das aktuelle ComPtrRef Objekt dargestellt wird.

ComPtrRef::operator==

Unterstützt die WRL-Infrastruktur und soll nicht direkt aus Ihrem Code verwendet werden.

bool operator==(
   const Details::ComPtrRef<ComPtr<T>>& a,
   const Details::ComPtrRef<ComPtr<U>>& b
);

bool operator==(
   const Details::ComPtrRef<ComPtr<T>>& a,
   decltype(__nullptr)
);

bool operator==(
   decltype(__nullptr),
   const Details::ComPtrRef<ComPtr<T>>& a
);

bool operator==(
   const Details::ComPtrRef<ComPtr<T>>& a,
   void* b
);

bool operator==(
   void* b,
   const Details::ComPtrRef<ComPtr<T>>& a
);

Parameter

a
Ein Verweis auf ein ComPtrRef-Objekt.

b
Ein Verweis auf ein anderes ComPtrRef Objekt oder ein Zeiger auf einen anonymen Typ (void*).

Rückgabewert

Der erste Operator gibt antrue, ob objekt a gleich Objekt b ist; andernfalls false.

Die zweiten und dritten Operatoren lieferntrue, wenn Objekt gleichnullptrist ; andernfalls . false

Die vierten und fünften Operatoren lieferntrue, wenn objekt a gleich Objekt b ist; andernfalls false.

Hinweise

Gibt an, ob zwei ComPtrRef-Objekte gleich sind.

ComPtrRef::operator!=

Unterstützt die WRL-Infrastruktur und soll nicht direkt aus Ihrem Code verwendet werden.

bool operator!=(
   const Details::ComPtrRef<ComPtr<T>>& a,
   const Details::ComPtrRef<ComPtr<U>>& b
);

bool operator!=(
   const Details::ComPtrRef<ComPtr<T>>& a,
   decltype(__nullptr)
);

bool operator!=(
   decltype(__nullptr),
   const Details::ComPtrRef<ComPtr<T>>& a
);

bool operator!=(
   const Details::ComPtrRef<ComPtr<T>>& a,
   void* b
);

bool operator!=(
   void* b,
   const Details::ComPtrRef<ComPtr<T>>& a
);

Parameter

a
Ein Verweis auf ein ComPtrRef-Objekt.

b
Ein Verweis auf ein anderes ComPtrRef Objekt oder ein Zeiger auf ein anonymes Objekt (void*).

Rückgabewert

Der erste Operator lieferttrue, wenn Objekt a nicht gleich Objekt b ist; andernfalls false.

Die zweiten und dritten Operatoren lieferntrue, wenn objekt a nicht gleich nullptrist ; andernfalls . false

Die vierten und fünften Operatoren lieferntrue, wenn Objekt a nicht gleich Objekt b ist; andernfalls false.

Hinweise

Gibt an, ob zwei ComPtrRef-Objekte ungleich sind.

ComPtrRef::operator InterfaceType**

Unterstützt die WRL-Infrastruktur und soll nicht direkt aus Ihrem Code verwendet werden.

operator InterfaceType**();

Hinweise

Löscht das aktuelle ComPtrRef Objekt und gibt einen Zeiger auf die Schnittstelle zurück, die durch das ComPtrRef Objekt dargestellt wurde.

ComPtrRef::operator*

Unterstützt die WRL-Infrastruktur und soll nicht direkt aus Ihrem Code verwendet werden.

InterfaceType* operator *();

Rückgabewert

Zeiger auf die Schnittstelle, die durch das aktuelle ComPtrRef Objekt dargestellt wird.

Hinweise

Ruft den Zeiger auf die Schnittstelle ab, die durch das aktuelle ComPtrRef Objekt dargestellt wird.

ComPtrRef::operator T*

Unterstützt die WRL-Infrastruktur und soll nicht direkt aus Ihrem Code verwendet werden.

operator T*();

Hinweise

Gibt den Wert des ptr_ Datenelements des aktuellen ComPtrRef Objekts zurück.

ComPtrRef::operator void**

Unterstützt die WRL-Infrastruktur und soll nicht direkt aus Ihrem Code verwendet werden.

operator void**() const;

Hinweise

Löscht das aktuelle ComPtrRef Objekt, wandelt den Zeiger auf die Schnittstelle um, die ComPtrRef vom Objekt als Zeiger-zu-Zeiger voiddargestellt wurde, und gibt dann den Umwandlungszeiger zurück.

ComPtrRef::ReleaseAndGetAddressOf

Unterstützt die WRL-Infrastruktur und soll nicht direkt aus Ihrem Code verwendet werden.

InterfaceType** ReleaseAndGetAddressOf();

Rückgabewert

Zeiger auf die Schnittstelle, die durch das gelöschte ComPtrRef Objekt dargestellt wurde.

Hinweise

Löscht das aktuelle ComPtrRef Objekt und gibt einen Zeiger auf die Schnittstelle zurück, die durch das ComPtrRef Objekt dargestellt wurde.