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