Sdílet prostřednictvím


CStringT::AllocSysString

Přidělí řetězec kompatibilního s automatizací typu BSTR a zkopíruje obsah CStringT objekt, včetně ukončujícím znakem null.

BSTR AllocSysString() const;

Vrácená hodnota

Nově přidělené řetězec.

Poznámky

Aplikace MFC Třída CMemoryException je vyvolána, pokud existuje nedostatek paměti.Programy ATL CAtlException je vyvolána.Tato funkce se obvykle používá k vrácení řetězce pro automatizaci.

Běžně Pokud je tento řetězec předán jako parametr [in] COM funkce, pak vyžaduje volající uvolnit řetězec.To lze provést pomocí SysFreeString, jak je popsáno v .Další informace naleznete v tématu Přidělení a uvolnění paměti pro BSTR.

Další informace o OLE rozdělení funkcí v systému Windows naleznete v tématu SysAllocString v .

Příklad

Následující příklad ukazuje použití 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.   

Požadavky

Záhlaví: cstringt.h

Viz také

Referenční dokumentace

Třída CStringT