Casa Finanza personale Costruzione di matrici costanti in C ++ - dummies

Costruzione di matrici costanti in C ++ - dummies

Video: Fondamenti di programmazione con Java - 9 - Array bidimensionali 2025

Video: Fondamenti di programmazione con Java - 9 - Array bidimensionali 2025
Anonim

Se si dispone di un array e non si desidera che il suo contenuto cambi, è possibile renderlo un array costante. Le seguenti righe di codice, trovate nell'esempio di Array05, dimostrano questo approccio:

const int Permanent [5] = {1, 2, 3, 4, 5}; cout << permanente [1] << endl;

Questo array funziona come qualsiasi altro array, tranne che non è possibile modificare i numeri al suo interno. Se si aggiunge una linea come la seguente riga, si ottiene un errore del compilatore, poiché il compilatore è consapevole delle costanti:

Permanente [2] = 5;

Ecco l'errore che si prova quando si prova in Code:: Blocchi:

errore: assegnazione della posizione di sola lettura 'Permanente [2]'

Che ne è di un array costante di non convertitori? Puoi farlo? Bene, a volte - a seconda del compilatore. È orribile come il seguente codice (trovato nell'esempio di Array06) - e non è uno standard ANSI! - sei autorizzato a farlo con le versioni precedenti dei compilatori gcc. (Microsoft Visual C ++ e Borland C ++ Builder non lo consentono e il codice:: Il compilatore di blocchi presenta un errore: messaggio di errore di assegnazione dell'array non valido.)

int NonConstant [5] = {1, 2, 3, 4, 5}; int OtherList [5] = {10, 11, 12, 13, 14}; OtherList = NonConstant;

In altre parole, questa terza riga sta dicendo: "Dimentica ciò che OtherList indica; invece, fai in modo che punti al primo array {1, 2, 3, 4, 5}! "Ora, veramente non dovrebbe scrivere codice come questo (ricorda, mantieni le cose semplici e comprensibili), quindi se vuoi evitare questo tipo di cose, puoi rendere costante la matrice:

< ! --3 ->
const int NonConstant [5] = {1, 2, 3, 4, 5}; const int OtherList [5] = {10, 11, 12, 13, 14}; OtherList = NonConstant;

Ora, quando il compilatore arriva alla terza riga, ti dà un errore:

errore: assegnazione della variabile di sola lettura 'OtherList'

Ma potresti notare che il modo in cui hai creato la costante dell'array era nello stesso modo in cui hai reso i suoi elementi costanti nel codice che veniva prima di questo esempio. Oops! Di cosa si tratta? Risulta ci sono alcune regole.

Il seguente elenco descrive le regole, in dettaglio, per rendere costante la matrice:

  • Se si desidera rendere costante una matrice, è possibile precedere il suo tipo con la parola const. Quando lo fai, il nome dell'array è costante e gli elementi all'interno dell'array sono anche costanti. Pertanto non è possibile avere una matrice costante con elementi non costanti, né si può avere una matrice non costante con elementi costanti.

  • La nozione di una matrice non costante esiste solo in gcc e non è standard ANSI.

Se vuoi davvero ottenere una tecnica, lo standard ANSI C ++ dice che quando inserisci la parola const davanti a una dichiarazione di array, non stai rendendo costante la matrice; stai dicendo che l'array contiene solo costanti.

Tuttavia, quando si utilizza const in questo modo, la maggior parte dei compilatori rendono costante anche la matrice. Ma va bene; le persone non dovrebbero prendere il nome di un array e copiarlo in qualcos'altro. Non è un buon stile di programmazione, e richiede solo bug - o, per lo meno, confusione - in seguito.

Costruzione di matrici costanti in C ++ - dummies

Scelta dell'editore

HDR Fotografia: Regola le impostazioni in Photomatix Dettagli Enhancer - dummies

HDR Fotografia: Regola le impostazioni in Photomatix Dettagli Enhancer - dummies

Dettagli Enhancer in Photomatix Pro ti consente di toni mappa le tue immagini ad alta gamma dinamica (HDR). Come puoi vedere da questa figura, ci sono un certo numero di controlli. Per fortuna, sono ben organizzati in aree funzionali. Le tre finestre mobili mostrano le impostazioni, l'anteprima dell'immagine e l'istogramma. Forza: controlla la forza di potenziamento del contrasto, sia locale ...

HDR Fotografia - Miscela materiale da fonti alternative - manichini

HDR Fotografia - Miscela materiale da fonti alternative - manichini

Cerca le aree dove potresti aver bisogno per mescolare il materiale da fonti alternative. Ad esempio, se una parte del cielo è saltata fuori, potresti voler sostituire il cielo scoppiato con una versione che è stata mappata in modo diverso in modo che il cielo appaia meglio (ciò che spesso accade è il resto ...

HDR Fotografia: scegli un formato file - dummies

HDR Fotografia: scegli un formato file - dummies

Quando crei un'immagine ad alta gamma dinamica, spesso viene data la possibilità di salvarlo come file HDR per un uso successivo. Se lo si salva come file HDR dipende in parte dalle preferenze e in parte da ciò che si intende fare. Normalmente, salti a destra nella mappatura dei toni, salva il minimo finale ...

Scelta dell'editore

Farmaci Opzioni per gestire la rabbia - manichini

Farmaci Opzioni per gestire la rabbia - manichini

La maggior parte dei programmi di gestione della rabbia non affronta il problema dei farmaci. In parte, probabilmente perché i farmaci non sono in realtà un modo per gestire la tua rabbia. E gli studi sull'efficacia dei farmaci per la rabbia sono stati alquanto incoerenti. Tuttavia, dovresti sapere che i farmaci possono essere un'opzione per alcune persone, specialmente quando altri disturbi emotivi, come ...

Gestione di amici e parenti con intelligenza emotiva - manichini

Gestione di amici e parenti con intelligenza emotiva - manichini

Ecco alcuni modi in cui si praticano tecniche di intelligenza emotiva con amici intimi e i parenti possono aiutarti a disinnescare situazioni difficili ea mantenere relazioni equilibrate e soddisfacenti con i tuoi cari. A partire dal finale le persone a volte interrompono completamente i contatti con parenti e amici e potresti trovarti in una situazione in cui ...

Mini questionario motivazionale - manichini

Mini questionario motivazionale - manichini

Dai un'occhiata al seguente elenco di compiti e decidi se vuoi ottenerne uno. Seleziona le attività che pensi di voler intraprendere: Acquistare una nuova casa Decorare la tua casa Sviluppare uno stile di vita più salutare Ottenere un nuovo lavoro Ottenere una promozione di lavoro Passare gli esami Lavorare per un ...

Scelta dell'editore

Come identificare i trigger di rabbia - dummies

Come identificare i trigger di rabbia - dummies

Conoscere i trigger di rabbia - gli eventi e le situazioni che ti fanno impazzire - è importante perché risponderai in modo più efficace alla tua rabbia quando ti sentirai preparato. Anticipare la possibilità di rabbia aumenta la capacità di esprimerlo in modo più costruttivo. Ecco alcuni trigger di rabbia comuni. Molte persone si sentono ...

Come misurare il tuo stress - manichini

Come misurare il tuo stress - manichini

Riconoscere i sintomi dello stress e quanto spesso si verificano può aiutarti ad affrontare lo stress. Utilizza le due settimane precedenti come periodo di tempo e registra l'occorrenza dei seguenti segni e sintomi fisici ed emotivi di stress. Dopo aver identificato i sintomi dello stress e quanto spesso si verificano, utilizzare la scala di valutazione dello stress per trovare il ...

Come calmare la mente - dummies

Come calmare la mente - dummies

Trovare modi per ridurre i livelli di stress aumenterà la tua felicità. A volte distrarti non è abbastanza per calmare la tua mente. A volte avete bisogno di misure più forti per eliminare, o almeno rallentare, quelle preoccupazioni e preoccupazioni indesiderate e che producono stress. Forse hai una preoccupazione inquietante che ti intrude continuamente nel tuo pensiero e ti impedisce di goderti ...