Salve ha tutti,
ho una classe in C++ con tutti i metodi per lavorare su una tradizionale lista linkata sviluppata con puntatori, ovvero questa qui:
Ora secondo voi dite che è possibile mantenere gli stessi metodi in modo da poter creare una futura classe "padre" da cui ereditano entrambi in cui non so, creare un metodo di ordinamento che funziona con entrambe le realizzazioni? Anche perchè lo scopo dell'esercitazione è anche avere lo stesso main che messo su una e sull'altra realizzazione funzioni senza cambiare una virgola.codice:class Lista { public: /* posizione è un puntatore a cella */ typedef Cella * posizione; /* Prototipi degli operatori */ void crealista(); bool listavuota() const; tipoelem leggilista(posizione) const; void scrivilista(tipoelem, posizione); posizione primoLista() const; bool finelista(posizione) const; posizione succlista(posizione) const; posizione preclista(posizione) const; void inslista(tipoelem,posizione&); void canclista(posizione &p); private: posizione lista; //la lista è un puntatore ad oggetto Cella };
In questa classe se cambiassi la typedef di posizione e la facessi diventare un semplice intero, come privato mettessi un array e poi cambiassi tutti i metodi dite che funzionerebbe ugualmente o secondo voi ci vuole per forza di cose un qualche cambiamento?
Avete per caso sottomano qualche realizzazione di lista con cursori (ovvero liste che vengono sviluppate in un array che viene chiamato spazio) abbastanza semplice da cui prendere spunto?![]()
Vi ringrazio in anticipo,
Neptune.