_com_error::_com_error

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

Parameters

  • hr
    HRESULT information.

  • perrinfo
    IErrorInfo object.

  • bool fAddRef=false
    Causes the constructor to call AddRef on a non-null IErrorInfo interface. This 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 do not 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.

Remarks

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

See Also

Reference

_com_error Class