description | title | ms.date | f1_keywords | helpviewer_keywords | ms.assetid | |||
---|---|---|---|---|---|---|---|---|
Learn more about: _com_error::_com_error |
_com_error::_com_error |
11/17/2022 |
|
|
0a69e46c-caab-49ef-b091-eee401253ce6 |
Microsoft Specific
Constructs a _com_error
object.
_com_error(
HRESULT hr,
IErrorInfo* perrinfo = NULL,
bool fAddRef = false) throw();
_com_error( const _com_error& that ) throw();
hr
HRESULT
information.
perrinfo
IErrorInfo
object.
fAddRef
The default causes the constructor to not call AddRef on a non-null IErrorInfo
interface. This behavior provides for correct reference counting in the common case where ownership of the interface is passed into the _com_error
object, such as:
throw _com_error(hr, perrinfo);
If you don't want your code to transfer ownership to the _com_error
object, and the AddRef
is required to offset the Release
in the _com_error
destructor, construct the object as follows:
_com_error err(hr, perrinfo, true);
that
An existing _com_error
object.
The first constructor creates a new object given an HRESULT
and optional IErrorInfo
object. The second creates a copy of an existing _com_error
object.
END Microsoft Specific