Sdílet prostřednictvím


CComBSTR::operator &

Vrátí adresu BSTR uložené v m_str člena.

BSTR* operator &( ) throw( );

Poznámky

**CComBstr operator &**má zvláštní uplatnění přidružen k identifikaci nevrácené paměti.Program bude uplatňovat při m_str člen je inicializován.Toto tvrzení bylo vytvořeno pro identifikaci situací, kde se používá programátor & operator přiřadit novou hodnotu pro m_str člena bez uvolnění prvního přidělení m_str .Pokud m_str se rovná NULL, program předpokládá, že m_str nebyla přidělena ještě.V takovém případě program nebude výrazu.

Toto tvrzení není ve výchozím nastavení povolena.Definovat ATL_CCOMBSTR_ADDRESS_OF_ASSERT povolit toto tvrzení.

Příklad

#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"));

Požadavky

Header:atlbase.h

Viz také

Referenční dokumentace

CComBSTR – třída