La classe String in C ++

La classe String in C ++
5 (100%) 4 voti




C ++ classe string, La programmazione per i principianti

Utilizzare le informazioni di testo mentre si lavora con i database, file, per la ricezione e l'invio di messaggi, Esso è una parte integrante di ogni programmatore. Le stringhe sono usati, per scopi interni (test e debug del codice), e per risolvere problemi comuni, dati al client, Il tuo GUI. Per questo motivo si dovrebbe prestare particolare attenzione alle, come costruire una stringa in C ++, come lavorare con il loro funzionamento di base e le modalità del trattamento oggetti come corda più veloce, o, più appropriatamente in una data situazione.

Stringhe in C ++ può essere un array di caratteri carbonizzare – Questo tipo incorporato, che è stato usato in C. Sia le istanze della classe corda, che è incluso nella libreria standard C ++. Va notato, che quando si crea un oggetto di questo tipo, abbiamo quasi otteniamo una matrice che cambia dinamicamente, vale a dire. il, che non vi è alcuna necessità di impostare la dimensione iniziale, perché possono cambiare il corso del lavoro con l'essenza.

Nel primo caso la linea viene posto nella memoria, come un array. Attraverso un puntatore carbonizzare Vi si accede. Questo approccio è piena di errori ed è abbastanza complessa, E 'implementato a partire. oggetti di classe corda facilitare il lavoro, attraverso di loro, è possibile ottenere l'accesso alle operazioni di stringa standard. Appartengono a uno spazio stl (Standard Template Library). Per un ulteriore uso della libreria standard C, è necessario collegare il file di intestazione:

L'esempio più semplice di utilizzare una variabile di tipo stringa sarà la rimozione sullo schermo. Ma complicare il compito e provare, per un avvio, considerato un valore di stringa, e poi farlo funzionare.

metodo getline() Consente dati letti dal flusso gin, e bruciarli nella variabile, che viene indicato dopo il punto decimale.

Nel caso di, quando è necessario inizializzare una variabile quando viene creato, si dovrebbe utilizzare la seguente sintassi:

Considerate i metodi di base della classe corda, che permettono di modificare la linea e di ottenere informazioni circa le loro opzioni.

Due metodi possono essere utilizzati per ottenere la lunghezza della stringa. uno dimensione() altro lunghezza(). Entrambi i metodi restituiscono una serie numerica di caratteri. Ma va notato, che la numerazione degli elementi nella stringa di serie inizia ancora con 0.

Inserzione per la verifica:

Poi si vede, Entrambi i metodi restituiscono gli stessi valori.

lavorare con le stringhe in C ++, класс String C ++, lunghezza metodi() dimensione и()

Per verificare la presenza di un dato variabile stringa si utilizza la funzione vuoto(), che restituisce un valore booleano ( 0 se falso o 1 se vero). Questa operazione è utile, quando si ha bisogno per proteggersi dalla perdita di dati.
Per ripristinare la stringa viene utilizzato il metodo variabile pulire(). Come risultato, dopo l'esecuzione myString.size() ritorno 0, e myString.empty() – senso vero, vale a dire. 1.
Listato di codice per le funzioni di controllo:

i risultati delle prestazioni:
lavorare con le stringhe in C ++, класс String C ++

Consideriamo ora le operazioni meno banali, che farà risparmiare tempo e fatica dei programmatori, nonché evitando l'uso di anelli massicci per scorrere ciascuna della matrice di stringhe.

funzione respingere (carbonizzare) Esso consente di aggiungere alla fine della riga corrente digitare qualsiasi carattere carbonizzare. così, non abbiamo bisogno di un ripristino del nuovo valore di stringa, la vecchia variabile sarà semplicemente modificato.

classe corda Esso consente di manipolare due stringhe allo stesso tempo, scrittura di valori da uno all'altro. A tale scopo, l'oggetto deve chiamare il metodo inserire (int startInResultString, stringa dal, int startInSourceString, int importo). dove startInResultString – cella nella posizione di partenza fila, in cui registrare i nuovi dati, vale a dire. i nuovi valori saranno posizionati da questo indice. una variabile stringa da parte di è una linea da cui sono tratti i dati, Tutti gli altri parametri sono particolari ad esso. Il valore iniziale dell'indice da cui iniziare la copia dei dati indicata startInSourceString. simboli totali, essere copiati dalla stringa da parte di indicato quantità, il conteggio viene eseguita iniziando con l'indice di partenza.
Codice permetterà comprendere meglio la funzione dei parametri di ingresso.

risultati di esecuzione di codice:

lavorare con le stringhe in C ++, класс String C ++

Non è stato tutto smantellata, ma la maggior parte delle funzioni di uso frequente per lavorare con oggetti String. vantaggio di classe corda È la facilità d'uso e supportare un gran numero di metodi. ciò nonostante, oggetti stringa vengono gestiti lentamente. In alcuni casi, può accadere la perdita di integrità dei dati o di interruzione di linea, che poi non può essere un modo per portare in di controllare visivamente.

esperimento – Creare un oggetto della classe corda e chiamare i suoi metodi on-line. Cercate di capire se stessi, cosa fanno e come funzionano. In molti libri di testo offerti scrivere in modo indipendente il proprio (certamente domato) classe per lavorare con le stringhe. E 'facile e si capirà perfettamente stesso tempo, Come è la classe reale corda. Ci prepareremo per voi alcuni compiti, per garantire questo materiale.

Assicuratevi di guardare il video sulla classe (autore Dennis Markov):

Newsletter nuove lezioni sulla programmazione:

7 pensieri su "La classe String in C ++

  1. buon articolo, Essa può essere il migliore in tutta la serie di articoli – sull'equilibrio di dettaglio e semplicità.

    proprio non capisco, il motivo per cui in tutto il testo di una classe chiamata String (con un capitale), anche se negli esempi viene sempre utilizzato come stringa (in minuscolo). Se si scrive il codice String, poi subito ottenere un errore di sintassi ruvido.

  2. Un'altra buona cosa da menzionare, addirittura casuale (o un argomento a parte nel corso della, “stringa di utilizzo”?):

    1. quello della stringa è sempre possibile “estratto” l'idea char più familiare * (nello stile di C) методом c_str():
    stringa s = “xxx”;
    char * c = s.c_str();

    2. o + = operazioni sovradeterminati e + a stringa, come concatenazione di stringhe:
    stringa h = “Ciao “, w = “mondo”;
    cout << h + w << endl;
    h + w =;
    cout << h << endl;

    3. di un intero metodi banda alta rappresentare stringhe di valori numerici di un'immagine:
    stringa d( "123" ), f( "1.23" );
    lungo i = d.stoul();
    float z = d.stof();

  3. e per ultimo … osservazione:
    > Entrambi i metodi restituiscono una serie numerica di caratteri.

    lunghezza() dimensione и() Non restituire il numero di caratteri, e il numero di byte nel contenuto della stringa. per ASCII (inglese) personaggi – essa è la stessa cosa. Ma per il russo (e altre lingue) – no, e dipende dalla codifica.

    , qualunque, in cui l'editor e quello che codifica stanno lavorando con il codice del programma.

    I valori esatti non sono importanti… Ma è importante sapere, che la lunghezza() dimensione и() per le linee russe non forniscono il numero stimato di caratteri, che possono dar luogo a errori di essere trovato difficile!

  4. #includere
    #includere
    using namespace std;

    int main()
    {
    myString stringa; // creare una variabile, в которую поместим строку

    cout << "What is your name? ";
    getline(gin, mystring); // считываем введенную строку

    cout << "Hey, " << mystring << "! \n"; // Deriviamo il valore della variabile sullo schermo
    }
    У меня почему-то getline(gin, mystring); не робит

    1. Извиняюсь, что не в

Lascia un Commento

Inserire il codice nei tag: <pre class="lang:C ++ decodifica:true ">IL TUO CODICE</pre>