CStringT::AllocSysString

分配类型 BSTR 的一个符合自动化的字符串并复制 CStringT 对象的内容到它,包括终止null字符)。

BSTR AllocSysString() const;

返回值

最近分配的字符串。

备注

在MFC程序,因此,如果内存不足存在,CMemoryException选件类 将引发。 在ATL程序,CAtlException 将引发。 此功能通常用于返回自动化的字符串。

通常,因此,如果该字符串传递给COM函数为 [in] 参数,则要求调用方释放字符串。 使用 SysFreeString,则可以执行,如 Windows SDK所述。 有关更多信息,请参见 分配和释放BSTR的内存

有关OLE在Windows的分配函数的更多信息,请参见 Windows SDK的 SysAllocString

示例

下面的示例说明 CStringT::AllocSysString 的用法。

// typedef CStringT<TCHAR, StrTraitATL<TCHAR, ChTraitsCRT<TCHAR>>> CAtlString;
CAtlString str(_T("This is a test string!"));
BSTR bstr = str.AllocSysString();

// bstr now contains "This is a test string!", and can be
// passed to any OLE function requiring a BSTR.
// Normally, if you pass the BSTR, you will
// need to free the string after returning from the function call.   

要求

Header: cstringt.h

请参见

参考

CStringT选件类