Compartir a través de


CComBSTR::operator &

 

Devuelve la dirección de BSTR almacenado en el miembro de m_str .

Sintaxis

BSTR* operator &( ) throw( );

Comentarios

CComBstr operator & tiene una aserción especial asociada a él para ayudar a identificar las pérdidas de memoria.El programa validar cuando se inicializa el miembro de m_str .Esta aserción se creó para identificar las situaciones en las que un programador utiliza & operator para asignar un nuevo valor al miembro de m_str sin liberar la primera asignación de m_str.Si m_str es NULL, el programa se supone que el m_str no fue asignado todavía.En este caso, el programa no validar.

Esta aserción no está habilitada de forma predeterminada.Defina ATL_CCOMBSTR_ADDRESS_OF_ASSERT para habilitar esta aserción.

#define ATL_NO_CCOMBSTR_ADDRESS_OF_ASSERT

void MyInitFunction(BSTR* pbstr)
{
   ::SysReAllocString(pbstr, OLESTR("Hello World"));
   return;
}
CComBSTR bstrStr ;
// bstrStr is not initialized so this call will not assert.
MyInitFunction(&bstrStr); 

CComBSTR bstrStr2(OLESTR("Hello World"));
// bstrStr2 is initialized so this call will assert.
::SysReAllocString(&bstrStr2, OLESTR("Bye"));

Requisitos

Header: atlbase.h

Vea también

CComBSTR (clase)