CComBSTR::operator &
返回在 m_str 成员存储的 BSTR 的地址。
BSTR* operator &( ) throw( );
备注
CComBstr operator & 特定断言与其关联的帮助标识内存泄漏。 程序将断言 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