ComPtrRefBase Class

Supports the WRL infrastructure and is not intended to be used directly from your code.

Syntax

template <typename T>
class ComPtrRefBase;

Parameters

T
A ComPtr<T> type or a type derived from it, not merely the interface represented by the ComPtr.

Remarks

Represents the base class for the ComPtrRef class.

Members

Public Typedefs

Name Description
InterfaceType A synonym for the type of template parameter T.

Public Operators

Name Description
ComPtrRefBase::operator IInspectable** Casts the current ptr_ data member to a pointer-to-a-pointer-to the IInspectable interface.
ComPtrRefBase::operator IUnknown** Casts the current ptr_ data member to a pointer-to-a-pointer-to the IUnknown interface.

Protected Data Members

Name Description
ComPtrRefBase::ptr_ Pointer to the type specified by the current template parameter.

Inheritance Hierarchy

ComPtrRefBase

Requirements

Header: client.h

Namespace: Microsoft::WRL::Details

ComPtrRefBase::operator IInspectable** Operator

Supports the WRL infrastructure and is not intended to be used directly from your code.

operator IInspectable**() const;

Remarks

Casts the current ptr_ data member to a pointer-to-a-pointer-to the IInspectable interface.

An error is emitted if the current ComPtrRefBase doesn't derive from IInspectable.

This cast is available only if __WRL_CLASSIC_COM__ is defined.

ComPtrRefBase::operator IUnknown** Operator

Supports the WRL infrastructure and is not intended to be used directly from your code.

operator IUnknown**() const;

Remarks

Casts the current ptr_ data member to a pointer-to-a-pointer-to the IUnknown interface.

An error is emitted if the current ComPtrRefBase doesn't derive from IUnknown.

ComPtrRefBase::ptr_

Supports the WRL infrastructure and is not intended to be used directly from your code.

T* ptr_;

Remarks

Pointer to the type specified by the current template parameter. ptr_ is the protected data member.