Classe CStringT

Esta classe representa um CStringT objeto.

template< typename BaseType, class StringTraits >
class CStringT : 
public CSimpleStringT<   BaseType,   _CSTRING_IMPL_::_MFCDLLTraitsCheck<      BaseType,      StringTraits   >   ::c_bIsMFCDLLTraits>

Parâmetros

  • 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).

  • StringTraits
    Determina se a classe de seqüência de caracteres precisa de suporte a biblioteca C em tempo de execução (CRT) e onde os recursos de seqüência de caracteres estão localizados.Pode ser um dos seguintes:

    • StrTraitATL < wchar_t | char | TCHAR, ChTraitsCRT < wchar_t | char | TCHAR >>

      A classe requer suporte do CRT e procura por recurso cadeias de caracteres no módulo especificado por m_hInstResource (um membro da classe de módulo do aplicativo).

    • StrTraitATL < wchar_t | char | TCHAR, ChTraitsOS < wchar_t | char | TCHAR >>

      A classe não requer suporte do CRT e procura por recurso cadeias de caracteres no módulo especificado por m_hInstResource (um membro da classe de módulo do aplicativo).

    • StrTraitMFC < wchar_t | char | TCHAR, ChTraitsCRT < wchar_t | char | TCHAR >>

      A classe requer suporte do CRT e procura por recurso strings usando o algoritmo de Pesquisar padrão do MFC.

    • StrTraitMFC < wchar_t | char | TCHAR, ChTraitsOS < wchar_t | char | TCHAR >>

      A classe não exige suporte do CRT e procura por cadeias de recursos usando o algoritmo de Pesquisar padrão do MFC.

Comentários

CStringT herda do Classe CSimpleStringT.Recursos avançados, sistema autônomo manipulação de caractere, pedidos e pesquisa, são implementados por CStringT.

Observação:

CStringT objetos são capazes de gerar exceções. Isso ocorre quando um CStringT objeto fica sem memória por qualquer motivo.

A CStringT objeto consiste em uma sequência de comprimento variável de caracteres. CStringT fornece funções e operadores usando uma sintaxe semelhante do Basic. Concatenação e operadores de comparação, juntamente com o gerenciamento de memória simplificado, tornam CStringT objetos mais fácil de usar do que matrizes de caractere comum.

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.

Usando diferentes combinações do BaseType e StringTraits parâmetros, CStringT objetos pode vêm nos seguintes tipos estão foram predefinida pelas bibliotecas ATL.

Se estiver usando em um aplicativo ATL:

CString, CStringA, e CStringW são exportados do MFC DLL (MFC90.DLL), nunca de DLLs do usuário. Isso é concluído para evitar CStringT de multiplicação sendo definidos.

Observação:

Se você encontrou erros do vinculador ao exportar um CString-derivado de classe de uma extensão do MFC DLL em Visual C++ .NET 2002 e aplique a solução conforme descrito no artigo do base de dados de conhecimento, "Vinculação erros quando você importar CString-Derived classes" (), você deve remover o código para solucionar esse problema, porque isso foi corrigido no Visual C++ .NET 2003. Você encontrará artigos da Base de dados de Conhecimento no CD-ROM Biblioteca MSDN ou em http://suporte.Microsoft.com/suporte.

Os tipos de seqüência de caracteres a seguir estão disponível em aplicativos baseados em MFC:

Tipo CStringT

Declaração

CStringA

Um caractere ANSI digite a seqüência de caracteres com suporte do CRT.

CStringW

Um caractere Unicode digite a seqüência de caracteres com suporte do CRT.

CString

Caractere ANSI e Unicode tipos com suporte do CRT.

A seguinte seqüência tipos estão disponível em projetos onde ATL_CSTRING_NO_CRT é definida:

Tipo CStringT

Declaração

CAtlStringA

Um caractere ANSI digite a seqüência de caracteres sem suporte do CRT.

CAtlStringW

Um caractere Unicode digite a seqüência de caracteres sem suporte do CRT.

CAtlString

Caractere ANSI e Unicode tipos sem suporte do CRT.

A seguinte seqüência tipos estão disponível em projetos onde ATL_CSTRING_NO_CRT não é definido:

Tipo CStringT

Declaração

CAtlStringA

Um caractere ANSI digite a seqüência de caracteres com suporte do CRT.

CAtlStringW

Um caractere Unicode digite a seqüência de caracteres com suporte do CRT.

CAtlString

Caractere ANSI e Unicode tipos com suporte do CRT.

CString objetos também têm as seguintes características:

  • CStringT objetos podem crescer sistema autônomo resultado de operações de concatenação.

  • CStringTos objetos seguem "valor semântica." Imagine um CStringT objeto sistema autônomo uma seqüência de caracteres real, e não sistema autônomo um ponteiro para uma seqüência de caracteres.

  • Você pode substituir livremente CStringT objetos para PCXSTR argumentos da função.

  • Gerenciamento de memória personalizados para os buffers de cadeia de caracteres.Para obter mais informações, consulte Gerenciamento de memória e CStringT.

CStringT predefinidas de tipos

Porque CStringT usa um argumento de modelo para definir o tipo de caractere ( wchar_t or char) suporte para, tipos de parâmetro do método podem ser complicados às vezes.Para simplificar esse problema, um conjunto de tipos predefinidos é definido e usado em todo o CStringT classe. A tabela a seguir lista os diversos tipos:

Nome

Descrição

XCHAR

Um único caractere (qualquer um dos wchar_t ou char) com o mesmo tipo de caractere sistema autônomo o CStringT objeto.

YCHAR

Um único caractere (qualquer um dos wchar_t ou char) com o tipo de caractere oposta sistema autônomo o CStringT objeto.

PXSTR

Um ponteiro para uma seqüência de caracteres (qualquer um dos wchar_t ou char) com o mesmo tipo de caractere sistema autônomo o CStringT objeto.

PYSTR

Um ponteiro para uma seqüência de caracteres (qualquer um dos wchar_t ou char) com o tipo de caractere oposta sistema autônomo o CStringT objeto.

PCXSTR

Um ponteiro para um Const seqüência de caracteres (qualquer um dos wchar_t ou char) com o mesmo tipo de caractere sistema autônomo o CStringT objeto.

PCYSTR

Um ponteiro para um Const seqüência de caracteres (qualquer um dos wchar_t ou char) com o tipo de caractere oposta sistema autônomo o CStringT objeto.

Observação:

Código usado anteriormente não documentados métodos de CString (por exemplo AssignCopy) deve ser substituído pelo código que usa sistema autônomo seguintes métodos documentados da CStringT (por exemplo GetBuffer ou ReleaseBuffer).

Requisitos

Header

Use para

cstringt.h

Seqüência de caracteres MFC somente objetos

atlstr.h

Objetos de string não-MFC

Consulte também

Referência

Gráfico de hierarquia

Outros recursos

CStringT membros

ATL/MFC compartilhadas classes