CStringT::SetSysString
重新 BSTR 指向由 pbstr 并复制 CStringT 对象的内容到它,包括 NULL 字符。
BSTR SetSysString(
BSTR* pbstr
) const;
参数
- pbstr
对字符字符串的指针。
返回值
新字符串。
备注
根据 CStringT 对象的内容,pbstr 引用的 BSTR 的值可以更改。如果内存不足存在,则函数引发 CMemoryException。
此功能通常用于更改传递的字符串的值为自动引用。
示例
BSTR bstr = ::SysAllocString(L"Golf is fun!");
// create a CAtlString and change the OLE
// string to the contents of the BSTR
// typedef CStringT<TCHAR, StrTraitATL<TCHAR, ChTraitsCRT<TCHAR>>> CAtlString;
CAtlString str(_T("Soccer is best!"));
BSTR bstr2 = str.SetSysString(&bstr);
// Now, both bstr and bstr2 reference a single instance of
// the "Soccer" string. The "Golf" string has been freed.
ASSERT(bstr2 == bstr);
要求
Header: cstringt.h