Kelas ComPtrRef

Mendukung infrastruktur WRL dan tidak dimaksudkan untuk digunakan langsung dari kode Anda.

Sintaks

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

Parameter

T
Jenis ComPtr<T> atau jenis yang berasal darinya, bukan hanya antarmuka yang diwakili oleh ComPtr.

Keterangan

Mewakili referensi ke objek jenis ComPtr<T>.

Anggota

Konstruktor Publik

Nama Deskripsi
ComPtrRef::ComPtrRef Menginisialisasi instans ComPtrRef baru kelas dari pointer yang ditentukan ke objek lain ComPtrRef .

Metode Publik

Nama Deskripsi
ComPtrRef::GetAddressOf Mengambil alamat penunjuk ke antarmuka yang diwakili oleh objek saat ini ComPtrRef .
ComPtrRef::ReleaseAndGetAddressOf Menghapus objek saat ini ComPtrRef dan mengembalikan pointer-to-a-pointer ke antarmuka yang diwakili oleh ComPtrRef objek.

Operator Publik

Nama Deskripsi
ComPtrRef::operator InterfaceType** Menghapus objek saat ini ComPtrRef dan mengembalikan pointer-to-a-pointer ke antarmuka yang diwakili oleh ComPtrRef objek.
ComPtrRef::operator T* Mengembalikan nilai ptr_ anggota data objek ComPtrRef saat ini.
ComPtrRef::operator void** Menghapus objek saat ini ComPtrRef , mentransmisikan penunjuk ke antarmuka yang diwakili oleh ComPtrRef objek sebagai pointer-to-pointer-to void-, lalu mengembalikan penunjuk cast.
ComPtrRef::operator* Mengambil penunjuk ke antarmuka yang diwakili oleh objek saat ini ComPtrRef .
ComPtrRef::operator== Menunjukkan apakah dua ComPtrRef objek sama.
ComPtrRef::operator!= Menunjukkan apakah dua ComPtrRef objek tidak sama.

Hierarki Warisan

ComPtrRefBase

ComPtrRef

Persyaratan

Header: client.h

Namespace: Microsoft::WRL::D etails

ComPtrRef::ComPtrRef

Mendukung infrastruktur WRL dan tidak dimaksudkan untuk digunakan langsung dari kode Anda.

ComPtrRef(
   _In_opt_ T* ptr
);

Parameter

ptr
Nilai yang mendasar dari objek lain ComPtrRef .

Keterangan

Menginisialisasi instans ComPtrRef baru kelas dari pointer yang ditentukan ke objek lain ComPtrRef .

ComPtrRef::GetAddressOf

Mendukung infrastruktur WRL dan tidak dimaksudkan untuk digunakan langsung dari kode Anda.

InterfaceType* const * GetAddressOf() const;

Tampilkan Nilai

Alamat penunjuk ke antarmuka yang diwakili oleh objek saat ini ComPtrRef .

Keterangan

Mengambil alamat penunjuk ke antarmuka yang diwakili oleh objek saat ini ComPtrRef .

ComPtrRef::operator==

Mendukung infrastruktur WRL dan tidak dimaksudkan untuk digunakan langsung dari kode Anda.

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
Referensi ke ComPtrRef objek.

b
Referensi ke objek lain ComPtrRef , atau penunjuk ke jenis anonim (void*).

Tampilkan Nilai

Operator pertama menghasilkan true jika objek a sama dengan objek b; jika tidak, false.

Operator kedua dan ketiga menghasilkan true jika objek a sama dengan nullptr; jika tidak, false.

Operator keempat dan kelima menghasilkan true jika objek a sama dengan objek b; jika tidak, false.

Keterangan

Menunjukkan apakah dua ComPtrRef objek sama.

ComPtrRef::operator!=

Mendukung infrastruktur WRL dan tidak dimaksudkan untuk digunakan langsung dari kode Anda.

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
Referensi ke ComPtrRef objek.

b
Referensi ke objek lain ComPtrRef , atau penunjuk ke objek anonim (void*).

Tampilkan Nilai

Operator pertama menghasilkan true jika objek a tidak sama dengan objek b; jika tidak, false.

Operator kedua dan ketiga menghasilkan true jika objek a tidak sama dengan nullptr; jika tidak, false.

Operator keempat dan kelima menghasilkan true jika objek a tidak sama dengan objek b; jika tidak, false.

Keterangan

Menunjukkan apakah dua ComPtrRef objek tidak sama.

ComPtrRef::operator InterfaceType**

Mendukung infrastruktur WRL dan tidak dimaksudkan untuk digunakan langsung dari kode Anda.

operator InterfaceType**();

Keterangan

Menghapus objek saat ini ComPtrRef dan mengembalikan pointer-to-a-pointer ke antarmuka yang diwakili oleh ComPtrRef objek.

ComPtrRef::operator*

Mendukung infrastruktur WRL dan tidak dimaksudkan untuk digunakan langsung dari kode Anda.

InterfaceType* operator *();

Tampilkan Nilai

Penunjuk ke antarmuka yang diwakili oleh objek saat ini ComPtrRef .

Keterangan

Mengambil penunjuk ke antarmuka yang diwakili oleh objek saat ini ComPtrRef .

ComPtrRef::operator T*

Mendukung infrastruktur WRL dan tidak dimaksudkan untuk digunakan langsung dari kode Anda.

operator T*();

Keterangan

Mengembalikan nilai ptr_ anggota data objek saat iniComPtrRef.

ComPtrRef::operator void**

Mendukung infrastruktur WRL dan tidak dimaksudkan untuk digunakan langsung dari kode Anda.

operator void**() const;

Keterangan

Menghapus objek saat ini ComPtrRef , mentransmisikan penunjuk ke antarmuka yang diwakili oleh ComPtrRef objek sebagai pointer-to-pointer-to void-, lalu mengembalikan penunjuk cast.

ComPtrRef::ReleaseAndGetAddressOf

Mendukung infrastruktur WRL dan tidak dimaksudkan untuk digunakan langsung dari kode Anda.

InterfaceType** ReleaseAndGetAddressOf();

Tampilkan Nilai

Penunjuk ke antarmuka yang diwakili oleh objek yang dihapus ComPtrRef .

Keterangan

Menghapus objek saat ini ComPtrRef dan mengembalikan pointer-to-a-pointer ke antarmuka yang diwakili oleh ComPtrRef objek.