CComBSTR::operator &
傳回在 m_str 成員儲存的 BSTR 的位址。
BSTR* operator &( ) throw( );
備註
CComBstr operator _& 有特殊的判斷提示與它可以協助找出記憶體遺漏 (Memory Leak)。 程式將判斷提示 m_str 成員時所初始化。 這個判斷提示來識別程式設計人員使用 _& operator 指派新值給 m_str 成員的情況下,不需要釋放 m_str的第一個配置。 如果 m_str 等於 null,程式會假設,並不會配置 m_str。 在這種情況下,程式將無法判斷提示。
預設為判斷提示不會啟用。 定義 ATL_CCOMBSTR_ADDRESS_OF_ASSERT 啟用這個判斷提示。
範例
#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"));
需求
Header: atlbase.h