Compartilhar via


CStringT::AllocSysString

Atribuir uma cadeia de caracteres Automação- de tipo compatível BSTR e copia o conteúdo do objeto de CStringT em ele, incluindo o caractere de terminação zero.

BSTR AllocSysString() const;

Valor de retorno

A cadeia de caracteres recentemente atribuído.

Comentários

Em programas MFC, Classe CMemoryException é gerada se a memória insuficiente existe. Em programas de ATL, CAtlException é lançada. Essa função é normalmente usada para retornar cadeias de caracteres para automação.

Geralmente, se essa cadeia de caracteres é passada para uma função de COM como [in] um parâmetro, então isso requer o chamador liberar a cadeia de caracteres. Isso pode ser feito usando SysFreeString, como descrito em Windows SDK. Para mais informações, consulte Atribuindo e liberando memória para um BSTR.

Para obter mais informações sobre funções de alocação VELHOS no windows, consulte SysAllocString em Windows SDK.

Exemplo

O exemplo a seguir demonstra o uso de 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.   

Requisitos

Cabeçalho: cstringt.h

Consulte também

Referência

Classe de CStringT