Note
Access to this page requires authorization. You can try signing in or changing directories.
Access to this page requires authorization. You can try changing directories.
A smart pointer class for managing COM interface pointers.
Syntax
template<class T, const IID* piid= &__uuidof(T)>
class CComQIPtr: public CComPtr<T>
Parameters
T
A COM interface specifying the type of pointer to be stored.
piid
A pointer to the IID of T.
Members
Public Constructors
| Name | Description |
|---|---|
| CComQIPtr::CComQIPtr | Constructor. |
Public Operators
| Name | Description |
|---|---|
| CComQIPtr::operator = | Assigns a pointer to the member pointer. |
Remarks
ATL uses CComQIPtr and CComPtr to manage COM interface pointers, both of which derive from CComPtrBase. Both classes perform automatic reference counting through calls to AddRef and Release. Overloaded operators handle pointer operations.
Inheritance Hierarchy
CComQIPtr
Requirements
Header: atlcomcli.h
CComQIPtr::CComQIPtr
The constructor.
CComQIPtr() throw();
CComQIPtr(T* lp) throw();
CComQIPtr(IUnknown* lp) throw();
CComQIPtr(const CComQIPtr<T, piid>& lp) throw();
Parameters
lp
Used to initialize the interface pointer.
T
A COM interface.
piid
A pointer to the IID of T.
CComQIPtr::operator =
The assignment operator.
T* operator= (T* lp) throw();
T* operator= (const CComQIPtr<T, piid>& lp) throw();
T* operator= (IUnknown* lp) throw();
Parameters
lp
Used to initialize the interface pointer.
T
A COM interface.
piid
A pointer to the IID of T.
Return Value
Returns a pointer to the updated CComQIPtr object.
See also
CComPtr::CComPtr
CComQIPtr::CComQIPtr
CComPtrBase Class
Class Overview
CComQIPtrElementTraits Class