Questo sito utilizza cookies solo per scopi di autenticazione sul sito e nient'altro. Nessuna informazione personale viene tracciata. Leggi l'informativa sui cookies.
Ciao a tutti,
vorrei sapere se è possibile riferirsi ai campi di un record memorizzato in un array senza specificare esplicitamente il campo.
Mi spiego.
Passo ad una procedura un array che contiene record(ad es. un array di record persone)
Nella pocedura inserisco il nome e scrivo readln(arr.nome)
ora non vorrei utilizzare
Codice sorgente - presumibilmente Plain Text
arr[i].nome ma arr[i]........
in modo che se alla procedura passo invece che un array di persone un array di macchine quando inserisco la targa posso scrivere
Codice sorgente - presumibilmente Plain Text
arr[i]....
e lui sa che è
Codice sorgente - presumibilmente Plain Text
arr[i].targa
.
Spero essermi spiegato
Grazie
Ultima modifica effettuata da antcru il 28/03/2012 alle 9:36
Ciao !
Con il turbo pascal, quello che vuoi fare, non è possibile.
Una soluzione al problema, è utilizzare il free pascal.
Quest' ultimo ti mette a disposizione l' overload delle funzioni
In questo modo, ciascun tipo, avrà i propri metodi.
Cosa intedi ? Non ho capito.
Intendo sfruttare il meccanismo di ridefinizione dei metodi offerta dall' ereditarietà.
Il funzionamento è semplice:
Definisco un oggetto padre, dichiarando i metodi virtuali.
Quindi dichiaro altri oggetti, che ereditano dalla classe padre.
A programma in esecuzione, si creano gli oggetti effettivi.