共用方式為


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

請參閱

參考

CStringT Class

CMemoryException 類別