179 Shares 5682 views

Un array dinamico e le sue caratteristiche

Array è generalmente indicato come un insieme ordinato di elementi ciascuno avente un certo (lo stesso) tipo. Gli array sono statici e dinamici. il primo tratto è specificato in fase, cioè programmazione prima di un inizio del programma per l'elaborazione, la seconda – in corso di esecuzione.
Per una matrice statica nella descrizione dovrebbe essere determinato numero di elementi che non possono essere modificati (aumento o diminuzione) durante il programma. Quando il programma viene avviato, utilizzando una matrice statica per l'esecuzione in memoria un numero di byte allocato per memorizzare gli elementi. Questa quantità di memoria verrà assegnato al programma fintanto che ha terminato il suo lavoro. Anche se questa memoria non viene utilizzata, nessun altro codice non sarà in grado di accedervi.
linguaggio di programmazione Pascal può funzionare solo con gli array statici. Pertanto, se si desidera lavorare con una sequenza di lunghezza variabile, è possibile descrivere la struttura, per esempio, di un centinaio di elementi, e utilizzato in diverse fasi di un diverso numero di elementi, non superiore al numero 100. Ed è certamente poco saggio.
Questo problema non esiste nel integrato ambiente di sviluppo di Delfi. Un array dinamico consente la descrizione non specifica il numero di elementi, e determinare la sua esecuzione. Un array dinamico può essere descritto in sezione Var come segue:
Var massiccio: array di interi

Pertanto, la struttura, designato identificatore voluminoso, è una sequenza lineare di ignoto intero (finora) di lunghezza. Per impostare le dimensioni, il programma deve applicare procedura SetLength, per esempio, SetLength (massiccio, 9). Massiccia acquisiscono array dinamico dimensione uguale al numero 9. Ora, si determina che nella sequenza vi sono nove elementi di tipo intero, numerate da zero. Queste caratteristiche hanno una matrice dinamica. Delphi è una procedura libera la memoria di un insieme di numeri, in cui la necessità per la memorizzazione scomparso. Questa procedura Finalizza, nel nostro caso sarà applicata come segue: Finalizza (Massive).

Analogamente, si può descrivere e applicare matrici dinamiche multidimensionali in Delphi. Ad esempio, bidimensionale struttura dinamica verrà descritto come segue:
Var massiccio: array di array di interi
Se necessario, le colonne possono essere di diverse lunghezze. Si precisa, inoltre procedura SetLength.

Spesso, soprattutto nei programmi di grandi e complessi, alcune strutture di dati vengono utilizzati di volta in volta, o solo all'inizio / fine del programma. E 'stato "in riserva" sarebbe molto dispendioso da tenere a memoria. Un array dinamico – un modo di allocazione razionale delle risorse del sistema informatico. Anche se ha alcuni svantaggi. In primo luogo, non è sempre conveniente elementi numerazione da zero. In secondo luogo, il programmatore deve sempre essere compresa in ciascun punto del codice, la condizione della matrice dinamica. Ma i suoi vantaggi rendono ridicole tutte queste difficoltà. In particolare, se si desidera inviare una grande quantità di subroutine di dati, non può fare a meno della modalità dinamica della rappresentazione.