CComBSTR::operator &
Gibt die Adresse BSTR zurück, das im m_str-Member gespeichert wird.
BSTR* operator &( ) throw( );
Hinweise
CComBstr operator & hat eine spezielle Assertion, die ihr zugeordnet wird, um zu helfen, Speicherverluste zu identifizieren. Das Programm wird erläutert, wann der m_str-Member initialisiert wird. Diese Assertion wurde erstellt, um Situationen zu identifizieren, in denen ein Programmierer & operator verwendet, um einen neuen Wert zuweisen m_str-Member, ohne die erste Zuordnung von m_str freizugeben. Wenn m_str gleich NULL hat, wird das Programm an, dass m_str noch nicht zugeordnet wurde. In diesem Fall wird das Programm nicht.
Diese Assertion ist standardmäßig nicht aktiviert. Definieren Sie ATL_CCOMBSTR_ADDRESS_OF_ASSERT, um diese Assertion zu aktivieren.
Beispiel
#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"));
Anforderungen
Header: atlbase.h