CStringT::CStringT

Constrói um CStringT objeto.

CStringT( ) throw() : 
   CThisSimpleString(
      StringTraits::GetDefaultManager()
   );

explicit CStringT(
   IAtlStringMgr* pStringMgr
) throw() : 
   CThisSimpleString(
            pStringMgr
   );

CStringT(
   const VARIANT& varSrc
);

CStringT(
   const VARIANT& varSrc,
   IAtlStringMgr* pStringMgr
);

CStringT( 
  const CStringT& strSrc
) : 
   CThisSimpleString( 
            strSrc
   );

operator CSimpleStringT<
      BaseType,
   !_CSTRING_IMPL_::_MFCDLLTraitsCheck<
            BaseType,
            StringTraits
   >::   c_bIsMFCDLLTraits 
> &()

template <
   bool bMFCDLL
>
CStringT(
   const CSimpleStringT<
            BaseType,
            bMFCDLL
   > & strSrc
) : 
   CThisSimpleString(
            strSrc
);

template <
   class SystemString
>
CStringT(
   SystemString^ pString
) : 
   CThisSimpleString(
      StringTraits::GetDefaultManager()
   );

CStringT(
   const XCHAR* pszSrc
) : 
   CThisSimpleString(
      StringTraits::GetDefaultManager()
   );

CSTRING_EXPLICIT CStringT(
   const YCHAR* pszSrc
) : 
   CThisSimpleString(
      StringTraits::GetDefaultManager()
   );

CStringT(
   LPCSTR pszSrc,
   IAtlStringMgr* pStringMgr
) : 
   CThisSimpleString(
            pStringMgr
   );

CStringT(
   LPCWSTR pszSrc,
   IAtlStringMgr* pStringMgr
) : 
   CThisSimpleString(
            pStringMgr
);

CSTRING_EXPLICIT CStringT(
   const unsigned char* pszSrc
) : 
   CThisSimpleString(
      StringTraits::GetDefaultManager()
   );

/*CSTRING_EXPLICIT*/ CStringT(
   char* pszSrc
) : 
   CThisSimpleString(
      StringTraits::GetDefaultManager()
   );

CSTRING_EXPLICIT CStringT(
   unsigned char* pszSrc
) : 
   CThisSimpleString(
      StringTraits::GetDefaultManager()
   );

CSTRING_EXPLICIT CStringT(
   wchar_t* pszSrc
) : 
   CThisSimpleString(
      StringTraits::GetDefaultManager()
   );

CStringT(
   const unsigned char* pszSrc,
   IAtlStringMgr* pStringMgr
) : 
   CThisSimpleString(
            pStringMgr
   );

CSTRING_EXPLICIT CStringT(
   char ch,
   int nLength = 1
) : 
   CThisSimpleString(
      StringTraits::GetDefaultManager()
   );

CSTRING_EXPLICIT CStringT(
   wchar_t ch,
   int nLength = 1
) : 
   CThisSimpleString(
      StringTraits::GetDefaultManager()
   );

CStringT(
   const XCHAR* pch,
   int nLength
) : 
   CThisSimpleString(
            pch,
            nLength,
      StringTraits::GetDefaultManager()
   );

CStringT(
   const YCHAR* pch,
   int nLength
) : 
   CThisSimpleString(
      StringTraits::GetDefaultManager()
   );

CStringT(
   const XCHAR* pch,
   int nLength,
   IAtlStringMgr* pStringMgr
) : 
   CThisSimpleString(
            pch,
            nLength,
            pStringMgr
);

CStringT(
   const YCHAR* pch,
   int nLength,
   IAtlStringMgr* pStringMgr
) : 
   CThisSimpleString(
            pStringMgr
   );

Parâmetros

  • pch
    Um ponteiro para uma matriz de caracteres de comprimento nLength, não terminada com nulo.

  • nLength
    Uma contagem do número de caracteres em pch.

  • ch
    Um único caractere.

  • pszSrc
    Uma seqüência de caracteres terminada com caractere nulo sejam copiados para este CStringT objeto.

  • pStringMgr
    Um ponteiro para o Gerenciador de memória para o CStringT objeto. Para obter mais informações sobre o IAtlStringMgr e gerenciamento de memória para CStringT, consulte Gerenciamento de memória com CStringT.

  • strSrc
    Um existenteCStringT objeto a ser copiada para essa CStringT objeto. Para obter mais informações sobre o CThisString e CThisSimpleString, consulte a seção comentários.

  • varSrc
    Um objeto variante sejam copiados para este CStringT objeto.

  • BaseType
    O tipo de caractere da classe string.Pode ser um dos seguintes:

    char (para seqüências de caractere ANSI).

    wchar_t (para seqüências de caractere Unicode).

    TCHAR (para ANSI e Unicode seqüências de caractere).

  • bMFCDLL
    booliano que especifica se o projeto é uma DLL da MFC (verdadeiro) ou não (FALSO).

  • SystemString
    Deve ser System::String, e o projeto deve ser compilado com/CLR.

  • pString
    Um identificador para um CStringT objeto.

Comentários

Porque os construtores copiar os dados de entrada para o novo armazenamento alocado, você deve estar ciente de que as exceções podem resultar de memória.Observe que alguns desses construtores funcionar sistema autônomo funções de conversão.Isso permite a substituição, por exemplo, um LPTSTR onde um CStringT objeto é esperado.

  • CStringT( LPCSTR lpsz ): Constructs a Unicode CStringT from an ANSI string.Você também pode usar esse construtor para carregar um recurso de cadeia de caracteres, conforme mostrado no exemplo a seguir.

  • CStringT( LPCWSTR lpsz ): Constructs a CStringT from a Unicode string.

  • CStringT( const unsigned char* psz ): Allows you to construct a CStringT from a pointer to unsigned char.

Observe que o strSrc parâmetro pode ser um CStringT ou CThisSimpleString objeto. For CStringT, use um dos seus (padrão) instanciaçõesCString, CStringA, ou CStringW); para CThisSimpleString, use um this ponteiro. CThisSimpleString declara uma instância das Classe CSimpleStringT, que é uma classe de seqüência de caracteres menor com pouca funcionalidade interna que o CStringT classe.

O operador de sobrecarga de CSimpleStringT<>&() constrói um CStringT objeto de um CSimpleStringT declaração.

Observação:

Embora seja possível Para criar CStringT instâncias que contêm caracteres nulo incorporados, é recomendável em relação a ele. Chamando métodos e operadores em CStringT objetos que contêm caracteres nulo incorporados podem produzir resultados não intencionais.

Exemplo

// typedef CStringT<TCHAR, StrTraitATL<TCHAR, ChTraitsCRT<TCHAR>>> CAtlString;

CAtlString s1;                    // Empty string
CAtlString s2(_T("cat"));           // From a C string literal
CAtlString s3 = s2;               // Copy constructor
CAtlString s4(s2 + _T(" ") + s3);   // From a string expression

CAtlString s5(_T('x'));             // s5 = "x"
CAtlString s6(_T('x'), 6);          // s6 = "xxxxxx"

CAtlString s7((LPCSTR)ID_FILE_NEW); // s7 = "Create a new document"

VARIANT var;
V_VT(&var) = VT_BSTR;
V_BSTR(&var) = ::SysAllocString(L"Football is a fun sport.");
CAtlString s8(var); // s8 = "Football is a fun sport."

// The following statement does not call the assignment operator.
// The compiler considers the following statement equivalent to
// CAtlString city("Paris")
CAtlString city = _T("Paris");   

Requisitos

Cabeçalho: cstringt.h

Consulte também

Referência

Classe CStringT

Outros recursos

CStringT membros