Condividi tramite


CStringT Class

Questa classe rappresenta un oggetto CStringT.

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

Parametri

  • BaseType
    Il tipo di carattere della classe string. ad esempio uno dei seguenti:

    • char (per le stringhe di caratteri ANSI).

    • wchar_t (per le stringhe di caratteri Unicode).

    • TCHAR (sia per ANSI che le stringhe di caratteri Unicode).

  • StringTraits
    Determina se la classe stringa richiede il supporto di librerie (CRT) di runtime del linguaggio C e dove le risorse di tipo stringa vengono individuate. ad esempio uno dei seguenti:

    • Wchar_t di strtraitatl< | char | TCHAR, wchar_t di chtraitscrt< | char | TCHAR > >

      La classe richiede il supporto CRT e cercare le stringhe di risorse nel modulo specificato da m_hInstResource (un membro della classe del form dell'applicazione).

    • Wchar_t di strtraitatl< | char | TCHAR, wchar_t di chtraitsos< | char | TCHAR > >

      La classe non richiede il supporto CRT e non nelle stringhe di risorse nel modulo specificato da m_hInstResource (un membro della classe del form dell'applicazione).

    • Wchar_t di strtraitmfc< | char | TCHAR, wchar_t di chtraitscrt< | char | TCHAR > >

      La classe richiede il supporto CRT e cercare le stringhe di risorsa utilizzando l'algoritmo di ricerca MFC standard.

    • Wchar_t di strtraitmfc< | char | TCHAR, wchar_t di chtraitsos< | char | TCHAR > >

      La classe non richiede il supporto CRT e non nelle stringhe di risorsa utilizzando l'algoritmo di ricerca MFC standard.

Membri

Costruttori pubblici

Nome

Descrizione

CStringT::CStringT

Costruisce un oggetto CStringT in diversi modi.

CStringT::~CStringT

Elimina un oggetto CStringT.

Metodi pubblici

Nome

Descrizione

CStringT::AllocSysString

Alloca BSTR i dati CStringT.

CStringT::AnsiToOem

Effettua una conversione sul posto dal set di caratteri ANSI il set di caratteri OEM.

CStringT::AppendFormat

Appends formattata dati a un oggetto esistente CStringT.

CStringT::Collate

Confronta due stringhe (fatta distinzione tra maiuscole e minuscole, informazioni specifiche delle impostazioni locali di utilizzare).

CStringT::CollateNoCase

Confronta due stringhe (senza distinzione tra maiuscole e minuscole, informazioni specifiche delle impostazioni locali di utilizzare).

CStringT::Compare

Confronta due stringhe (fatta distinzione tra maiuscole e minuscole).

CStringT::CompareNoCase

Confronta due stringhe (senza distinzione tra maiuscole e minuscole).

CStringT::Delete

Elimina un carattere o i caratteri da una stringa.

CStringT::Find

Trova un carattere o una sottostringa in una stringa più grande.

CStringT::FindOneOf

Trova il primo carattere corrispondente da un insieme.

CStringT::Format

Formatta la stringa come sprintf scegliere.

CStringT::FormatMessage

Formatta una stringa di messaggio.

CStringT::FormatMessageV

Formatta una stringa di messaggio utilizzando un elenco di argomenti variabile.

CStringT::FormatV

Formatta la stringa utilizzando un elenco variabile di argomenti.

CStringT::GetEnvironmentVariable

Imposta la stringa a valore della variabile di ambiente specificata.

CStringT::Insert

Inserisce un singolo carattere o una sottostringa all'indice specificato nella stringa.

CStringT::Left

Estrae la parte sinistra di una stringa.

CStringT::LoadString

Carica un oggetto esistente CStringT da una risorsa di Windows.

CStringT::MakeLower

Converte tutti i caratteri nella stringa in caratteri minuscoli.

CStringT::MakeReverse

Inverte la stringa.

CStringT::MakeUpper

Converte tutti i caratteri nella stringa in caratteri maiuscoli.

CStringT::Mid

Estrae la parte centrale di una stringa.

CStringT::OemToAnsi

Effettua una conversione sul posto il set di caratteri OEM il set di caratteri ANSI.

CStringT::Remove

Consente di rimuovere leggere i caratteri da una stringa.

CStringT::Replace

Replaces di leggere i caratteri con altri caratteri.

CStringT::ReverseFind

Trova un carattere in una stringa più grande, parte dalla fine.

CStringT::Right

Estrae la parte destra di una stringa.

CStringT::SetSysString

Imposta un oggetto esistente BSTR con i dati di un oggetto CStringT.

CStringT::SpanExcluding

Estrae i caratteri della stringa, a partire dal primo carattere, non presenti nel set di caratteri identificati da pszCharSet.

CStringT::SpanIncluding

Estrae una sottostringa contenente solo i caratteri in un gruppo.

CStringT::Tokenize

Token specificati estratti in una stringa di destinazione.

CStringT::Trim

Elimina tutti gli spazi vuoti iniziali e finali dalla stringa.

CStringT::TrimLeft

Impostare il testo che guidano gli spazi vuoti dalla stringa.

CStringT::TrimRight

Impostare il testo del trascinamento degli spazi vuoti dalla stringa.

Operatori

CStringT::operator =

Assegna un valore a un oggetto CStringT.

CStringT::operator +

Concatena due stringhe o un carattere e una stringa.

CStringT::operator +=

Concatena una nuova stringa alla fine di una stringa esistente.

CStringT::operator ==

Determina se due stringhe sono logicamente uguali.

CStringT::operator !=

Determina se due stringhe non logicamente sono uguali.

CStringT::operator <

Determina se la stringa a sinistra dell'operatore è minore della stringa dalla destra.

CStringT::operator >

Determina se la stringa a sinistra dell'operatore è maggiore della stringa dalla destra.

CStringT::operator <=

Determina se la stringa a sinistra dell'operatore è minore o uguale alla stringa dalla destra.

CStringT::operator >=

Determina se la stringa a sinistra dell'operatore è maggiore o uguale alla stringa dalla destra.

Note

CStringT eredita da classe di CSimpleStringT. Le funzionalità avanzate, ad esempio la modifica di carattere, ordinamento e ricerca, implementati da CStringT.

Nota

Gli oggetti diCStringT sono in grado di generare eccezioni.Ciò si verifica quando un oggetto CStringT utilizza la memoria per il motivo.

Un oggetto CStringT è costituito da una sequenza di lunghezza variabile di caratteri. CStringT fornisce funzioni e operatori utilizzando una sintassi simile a quella di base. La concatenazione e gli operatori di confronto, insieme a gestione della memoria semplificata, producono gli oggetti CStringT più facili da utilizzare e matrici di caratteri normali.

Nota

Sebbene sia possibile creare istanze CStringT contenenti caratteri Null incorporati, è pronunciamo rispetto a.Chiamare metodi degli operatori per gli oggetti CStringT contenenti caratteri Null incorporati possono produrre risultati imprevisti.

Tramite combinazioni diverse dei parametri StringTraits e BaseType, gli oggetti CStringT possono disporre dei seguenti tipi, ovvero sono stati predefiniti dalle librerie ATL.

Se utilizzato in un'applicazione ATL:

CString, CStringAe CStringW vengono esportate dalla DLL MFC (MFC90.DLL), mai da DLL dell'utente. Questa operazione viene eseguita per impedire CStringT sia di moltiplicare definito.

Nota

Se incontraste gli errori del linker quando si esporta CStringclasse derivata da una DLL di estensione MFC in Visual C++ .NET 2002 ed è applicato la soluzione alternativa descritta nell'articolo della Knowledge Base, "collegando gli errori quando si importa le classi Derivate CString-" (Q309801), è necessario rimuovere il codice della soluzione alternativa, poiché questo è stato corretto in Visual C++ .NET 2003.disponibile nel CD della MSDN Library o all'indirizzo https://support.microsoft.com/default.aspx.

I seguenti tipi di stringa sono disponibili nelle applicazioni basate su MFC:

Tipo di CStringT

Dichiarazione

CStringA

Una stringa di caratteri ANSI con supporto CRT.

CStringW

Una stringa di caratteri unicode con supporto CRT.

CString

Sia i tipi di carattere unicode in formato ANSI con supporto CRT.

I seguenti tipi di stringa sono disponibili nei progetti ATL_CSTRING_NO_CRT in cui viene definito:

Tipo di CStringT

Dichiarazione

CAtlStringA

Una stringa di caratteri ANSI senza supporto CRT.

CAtlStringW

Una stringa di caratteri unicode senza supporto CRT.

CAtlString

Sia i tipi di carattere unicode in formato ANSI senza supporto CRT.

I seguenti tipi di stringa sono disponibili nei progetti in cui ATL_CSTRING_NO_CRT non è definito:

Tipo di CStringT

Dichiarazione

CAtlStringA

Una stringa di caratteri ANSI con supporto CRT.

CAtlStringW

Una stringa di caratteri unicode con supporto CRT.

CAtlString

Sia i tipi di carattere unicode in formato ANSI con supporto CRT.

Gli oggetti diCString hanno le seguenti caratteristiche:

  • Gli oggetti diCStringT possono determinare come risultato delle operazioni di concatenazione.

  • Gli oggetti diCStringT seguono "semantica di valore". Considerare un oggetto CStringT come una stringa, non come puntatore a una stringa.

  • È possibile sostituire agli oggetti CStringT per gli argomenti della funzione PCXSTR.

  • Gestione della memoria personalizzato per i buffer di stringa. Per ulteriori informazioni, vedere Gestione della memoria e CStringT.

CStringT ha predefinito i tipi

Poiché CStringT utilizza un argomento di template per definire il tipo di carattere ( wchar_t o char) supportato, tipi di parametro del metodo può essere complicato talvolta. Per semplificare questo problema, un set di tipi predefiniti è definito e utilizzato nella classe CStringT. Nella tabella seguente sono elencati i diversi tipi:

Nome

Descrizione

XCHAR

Un singolo carattere ( wchar_t o char) con lo stesso tipo di carattere dell'oggetto CStringT.

YCHAR

Un singolo carattere ( wchar_t o char) al tipo di carattere opposto come oggetto CStringT.

PXSTR

Un puntatore a una stringa di caratteri ( wchar_t o char) con lo stesso tipo di carattere dell'oggetto CStringT.

PYSTR

Un puntatore a una stringa di caratteri ( wchar_t o char) al tipo di carattere opposto come oggetto CStringT.

PCXSTR

Un puntatore a una stringa di caratteri const ( wchar_t o char) con lo stesso tipo di carattere dell'oggetto CStringT.

PCYSTR

Un puntatore a una stringa di caratteri const ( wchar_t o char) al tipo di carattere opposto come oggetto CStringT.

Nota

Il codice che i metodi non documentati in precedenza utilizzati CString (come AssignCopy) devono essere sostituiti dal codice che utilizza i seguenti metodi illustrati CStringT (come GetBuffer o ReleaseBuffer).Questi metodi vengono ereditati da CSimpleStringT.

Gerarchia di ereditarietà

CSimpleStringT

CStringT

Requisiti

Header

Da utilizzare per

cstringt.h

Oggetti stringa solo MFC

atlstr.h

Oggetti stringa Non MFC

Vedere anche

Riferimenti

Grafico delle gerarchie

CSimpleStringT Class

Altre risorse

ATL/MFC Shared Classes