| Home  | Casa  | Hardware  | Networking  | Programmazione  | Software  | Domanda  | Sistemi  |   
Programmazione  
  • C /C + + Programming

  • Computer Programming Languages

  • Delphi Programming

  • Java Programming

  • Programmazione Javascript

  • PHP /MySQL Programmazione

  • Perl Programming

  • Python Programming

  • rubino Programmazione

  • Nozioni di base di Visual Programming
  •  
    Conoscenza Informatica >> Programmazione >> C /C + + Programming >> Content
    Come creare una stringa dinamica in C + +
    tipi di dati dinamici non hanno una dimensione fissa . Quando un computer memorizza un numero , utilizza lo stesso numero di byte per memorizzare il numero " 0 " e il numero " 20000 ". Ma provate a memorizzare una frase e il panorama cambia radicalmente. Dal momento che ogni frase ha una lunghezza diversa , la memoria utilizzata per memorizzare la frase deve cambiare in modo dinamico . Standard C non ha incluso un tipo di dati stringa , e la progettazione di un tipo di dati stringa dinamica ( o di classe string ) è diventato quasi un rito di passaggio di ogni nuovo programmatore C + C /+ . Cose che ti serviranno
    Informatica C + + Compiler (consigliato : Visual C + + Express ) economici Mostra più istruzioni
    Progettazione di una stringa di Classe
    1

    visualizzare le caratteristiche della classe string . La stringa deve avere le seguenti : .

    Dimensione dinamico ( cambia con l'input dell'utente , o assegnazione ) per

    in grado di conoscere la dimensione della vostra stringa

    uscita la stringa . memorizzato.

    Conservare le dimensioni .

    memorizzare il primo carattere della nostra stringa ( dato che è dinamico , non si sa dove finisce. ) economici 2 < p > separato che dispone della classe string sono informazioni ( o dati) e quali sono le funzioni . Solitamente , tutto ciò che comporta l'azione è una funzione. Dalla nostra lista : .

    Dimensione dinamica - > funzione in base a come si fa a costruire una stringa

    conoscere la dimensione della stringa - > Funzione

    uscita il . stringa - . > Funzione

    Conservare le dimensioni - . > dati /informazioni

    Conservare l' inizio della stringa . - > dati /informazioni
    3

    definire il ruolo di ogni funzione , e il tipo di dati membro della classe in termini semplici . Dalla lista precedente :

    dinamica Dimensione - Funzione - Costruisce la stringa

    conoscere la dimensione - Funzione - restituisce la dimensione di stringa

    uscita la stringa - Funzione - Restituisce il . . contenuto della stringa

    Conservare le dimensioni - . dati /informazioni - deve essere un numero intero positivo

    Conservare l' inizio della stringa - . dati /informazioni - . carattere

    Implementazione della classe String - File Header
    4

    Creare un file header chiamato mystring.h ( File - > Aggiungi - > File di intestazione ) . Un file di intestazione è come un indice per il vostro codice .
    5

    Definire la classe nel file di intestazione . Questo è il codice :
    classe

    mystring {
    6

    Creare funzioni pubbliche per affrontare tutte le funzioni nella progettazione. Questo è il codice :

    pubblico :

    mystring ( ) ; //crea una stringa vuota

    mystring ( const char * ) ; //crea e inizializza la stringa di certo valore ( tra parentesi ) per

    ~ mystring (); //dealloca risorse di memoria dinamica

    int getSize ( ) ; //ci mostra la dimensione della stringa

    char * outputmystring (); //output la stringa
    7

    Creare dati membro privati ​​per memorizzare i dati della vostra stringa. Questo è il codice :

    privato :

    int _size ; //memorizza la stringa di formato

    char * _mystr ; /* questo è un membro di dati che punta al primo carattere della stringa . Se sappiamo che il primo carattere e la dimensione della stringa , si può accedere a tutti i suoi caratteri * /

    }
    8

    Digitare il codice del file di intestazione completa ( è possibile copiare e incollare da qui ) :

    /* mystring.h * /
    classe

    mystring {

    pubblico :

    mystring ( ) ;

    mystring ( const char *) ;

    ~ mystring ();

    int getsize ();

    char * outputmystring ();

    privato :

    int _size ;

    char * _mystr ;

    }
    Implementare la classe String - Codice File
    9 < p > Creare un file CPP corrispondente chiamato mystring.cpp ( File - > Aggiungi - > file cpp - file vuoto ) . Qui , potrete includere le definizioni per la funzione del file di intestazione mystring.h . Proprio come un libro , file header memorizzano i principali tittles , e cpp file memorizzano i contenuti e le definizioni di ciascun apice .
    10

    Includere il cstring e librerie iostream . Questo è il codice :

    /* mystring.cpp * /# include


    # include
    11 < p > Definire le funzioni di costruzione ( costruzione di vuoto e di costruzione del parametro ) . Ecco il codice :

    mystring :: mystring ( ) //costruttore vuoto

    {

    _size = 0;

    _mystr = 0 ; < br

    }

    mystring > :: mystring (const char * str ) /* costruisce e inizializza stringa in un valore * /

    {

    if (! str)

    { _size = 0; _mystr = 0; } /* se nessun valore , stringa è vuota * /

    altro

    { _size = strlen ( str) ; < br >

    _string = new char [ _size +1 ] ; /* questa è la nostra allocazione dinamica della memoria , in base alla dimensione del parametro * /

    StrCopy ( _string , str) ;
    < p > } }


    12

    definire la funzione distruttore . Questa funzione viene utilizzata per de- allocare la memoria dinamica . Ogni volta che la memoria utilizzata modifiche , il computer deve sapere che può usare quella parte di memoria per altri scopi , questo processo è chiamato deallocazione . Il codice :

    mystring :: ~ mystring

    { eliminare [ ] _mystr ; } /* dealloca nostra dinamica di memoria * /
    13

    definire la funzione di restituire la dimensione della stringa e la stringa di output . Il formato è semplice. Basta visualizzare il valore di _size :

    int mystring :: getsize ( ) {return ( _size );}

    Per emettere la stringa , si produce ogni singolo personaggio fino a quando si raggiunge la fine del stringa ( che risulta essere il valore di _size ) :

    vuoto mystring :: outputmystring ( ) per

    {for ( int count = 0; count == dimensioni ; count + + ) per < p > { cout << _mystr [ count] ; }

    cout << endl; }
    14

    Ecco il codice completo per mystring.cpp : < br >

    /* mystring.cpp * /# include


    # include

    mystring :: mystring ( ) //Vuoto costruttore

    {

    _size = 0;

    _mystr = 0; }


    mystring :: mystring ( const char * str ) /* costruisce e inizializza stringa in un valore * /

    {

    if ( str ) per

    { _size = 0; ! _mystr = 0; } /* se non valore , stringa è vuota * /

    altro

    { _size = strlen ( str) ;

    _string = new char [ _size +1 ] ; /* questo è il nostro dinamico allocazione della memoria , in base alla dimensione del parametro * /

    StrCopy ( _string , str) ; }


    }

    mystring :: ~ mystring

    { eliminare [ ] _mystr ; } /* dealloca nostra dinamica di memoria * /

    int mystring :: getsize ( ) {return ( _size );}

    vuoto mystring : : outputmystring ( ) per

    {for ( int count = 0; count == dimensioni ; count + + ) per

    { cout << _mystr [ count] ; }

    cout << endl; }

    Previous :

    next :
      Articoli Correlati
    ·Come scrivere un griglia 5X5 utilizzando C + + 
    ·Come imparare a programmare gioco per computer con Dire…
    ·Come leggere email codificati con MIME 
    ·GNU & C + + per Computer 
    ·Che cosa sono variabili struttura inizializzato a in C 
    ·Come funzioni vettoriali Aggregate 
    ·Come creare una classe C + + 
    ·Come utilizzare Visual C 6 
    ·Come costruire un motore di gioco per principianti 
    ·Come contare le funzioni in codice C 
      Articoli in evidenza
    ·Come verificare se un carattere è un numero o non in J…
    ·Come analizzare una linea in Perl 
    ·Come faccio a fermare una persona di venire a casa mia …
    ·Come convertire un elenco in un set in Python 
    ·Come creare una piramide doppia faccia in Java per l'ut…
    ·Come utilizzare la funzione Trim 
    ·Come eliminare le righe nel file piatti in PHP 
    ·Come ordinare REXX Variabili Staminali 
    ·Come calcolare intervalli di date in MySQL 
    ·Come uccidere sintassi C + + 
    Copyright © Conoscenza Informatica http://it.wingwit.com