Udostępnij przez


ComPtrRef — Klasa

Obsługuje infrastrukturę biblioteki WRL i nie jest przeznaczona do użycia bezpośrednio z kodu.

Składnia

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

Parametry

T
Typ T> comPtr<lub typ pochodzący z niego, a nie tylko interfejs reprezentowany przez ComPtr.

Uwagi

Reprezentuje odwołanie do obiektu typu ComPtr<T>.

Elementy członkowskie

Konstruktory publiczne

Nazwa/nazwisko opis
ComPtrRef::ComPtrRef Inicjuje ComPtrRef nowe wystąpienie klasy z określonego wskaźnika do innego ComPtrRef obiektu.

Metody publiczne

Nazwa/nazwisko opis
ComPtrRef::GetAddressOf Pobiera adres wskaźnika do interfejsu reprezentowanego przez bieżący ComPtrRef obiekt.
ComPtrRef::ReleaseAndGetAddressOf Usuwa bieżący ComPtrRef obiekt i zwraca wskaźnik do wskaźnika do interfejsu reprezentowanego ComPtrRef przez obiekt.

Operatory publiczne

Nazwa/nazwisko opis
ComPtrRef::operator InterfaceType** Usuwa bieżący ComPtrRef obiekt i zwraca wskaźnik do wskaźnika do interfejsu reprezentowanego ComPtrRef przez obiekt.
ComPtrRef::operator T* Zwraca wartość elementu członkowskiego danych ptr_ bieżącego obiektu ComPtrRef.
ComPtrRef::operator void** Usuwa bieżący ComPtrRef obiekt, rzutuje wskaźnik do interfejsu ComPtrRef reprezentowanego przez obiekt jako wskaźnik do wskaźnika do void, a następnie zwraca wskaźnik rzutowania.
ComPtrRef::operator* Pobiera wskaźnik do interfejsu reprezentowanego przez bieżący ComPtrRef obiekt.
ComPtrRef::operator== Wskazuje, czy dwa ComPtrRef obiekty są równe.
ComPtrRef::operator!= Wskazuje, czy dwa ComPtrRef obiekty nie są równe.

Hierarchia dziedziczenia

ComPtrRefBase

ComPtrRef

Wymagania

Nagłówek: client.h

Przestrzeń nazw: Microsoft::WRL::D etails

ComPtrRef::ComPtrRef

Obsługuje infrastrukturę biblioteki WRL i nie jest przeznaczona do użycia bezpośrednio z kodu.

ComPtrRef(
   _In_opt_ T* ptr
);

Parametry

ptr
Podstawowa wartość innego ComPtrRef obiektu.

Uwagi

Inicjuje ComPtrRef nowe wystąpienie klasy z określonego wskaźnika do innego ComPtrRef obiektu.

ComPtrRef::GetAddressOf

Obsługuje infrastrukturę biblioteki WRL i nie jest przeznaczona do użycia bezpośrednio z kodu.

InterfaceType* const * GetAddressOf() const;

Wartość zwracana

Adres wskaźnika do interfejsu reprezentowanego przez bieżący ComPtrRef obiekt.

Uwagi

Pobiera adres wskaźnika do interfejsu reprezentowanego przez bieżący ComPtrRef obiekt.

ComPtrRef::operator==

Obsługuje infrastrukturę biblioteki WRL i nie jest przeznaczona do użycia bezpośrednio z kodu.

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
);

Parametry

a
Odwołanie do ComPtrRef obiektu.

b
Odwołanie do innego ComPtrRef obiektu lub wskaźnik do typu anonimowego (void*).

Wartość zwracana

Pierwszy operator zwraca wartość true , jeśli obiekt a jest równy obiektowi b; w przeciwnym razie false.

Drugie i trzecie operatory dają wartość true , jeśli obiekt jest równy nullptr; w przeciwnym razie false.

Czwarte i piąte operatory dają wartość true , jeśli obiekt a jest równy obiektowi b; w przeciwnym razie false.

Uwagi

Wskazuje, czy dwa ComPtrRef obiekty są równe.

ComPtrRef::operator!=

Obsługuje infrastrukturę biblioteki WRL i nie jest przeznaczona do użycia bezpośrednio z kodu.

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
);

Parametry

a
Odwołanie do ComPtrRef obiektu.

b
Odwołanie do innego ComPtrRef obiektu lub wskaźnik do obiektu anonimowego (void*).

Wartość zwracana

Pierwszy operator zwraca wartość true , jeśli obiekt a nie jest równy obiektowi b; w przeciwnym razie false.

Drugie i trzecie operatory dają wartość true , jeśli obiekt nie jest równy nullptr; w przeciwnym razie false.

Czwarte i piąte operatory dają wartość true , jeśli obiekt a nie jest równy obiektowi b; w przeciwnym razie false.

Uwagi

Wskazuje, czy dwa ComPtrRef obiekty nie są równe.

ComPtrRef::operator InterfaceType**

Obsługuje infrastrukturę biblioteki WRL i nie jest przeznaczona do użycia bezpośrednio z kodu.

operator InterfaceType**();

Uwagi

Usuwa bieżący ComPtrRef obiekt i zwraca wskaźnik do wskaźnika do interfejsu reprezentowanego ComPtrRef przez obiekt.

ComPtrRef::operator*

Obsługuje infrastrukturę biblioteki WRL i nie jest przeznaczona do użycia bezpośrednio z kodu.

InterfaceType* operator *();

Wartość zwracana

Wskaźnik do interfejsu reprezentowanego przez bieżący ComPtrRef obiekt.

Uwagi

Pobiera wskaźnik do interfejsu reprezentowanego przez bieżący ComPtrRef obiekt.

ComPtrRef::operator T*

Obsługuje infrastrukturę biblioteki WRL i nie jest przeznaczona do użycia bezpośrednio z kodu.

operator T*();

Uwagi

Zwraca wartość elementu członkowskiego danych ptr_ bieżącego ComPtrRef obiektu.

ComPtrRef::operator void**

Obsługuje infrastrukturę biblioteki WRL i nie jest przeznaczona do użycia bezpośrednio z kodu.

operator void**() const;

Uwagi

Usuwa bieżący ComPtrRef obiekt, rzutuje wskaźnik do interfejsu ComPtrRef reprezentowanego przez obiekt jako wskaźnik do wskaźnika do void, a następnie zwraca wskaźnik rzutowania.

ComPtrRef::ReleaseAndGetAddressOf

Obsługuje infrastrukturę biblioteki WRL i nie jest przeznaczona do użycia bezpośrednio z kodu.

InterfaceType** ReleaseAndGetAddressOf();

Wartość zwracana

Wskaźnik do interfejsu reprezentowanego przez usunięty ComPtrRef obiekt.

Uwagi

Usuwa bieżący ComPtrRef obiekt i zwraca wskaźnik do wskaźnika do interfejsu reprezentowanego ComPtrRef przez obiekt.