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 |