- Modificare il programma dell'albero binario assegnato in precedenza
(soluzione precedente) in modo da:
- creare una classe astratta 'albero' con un attributo statico per il puntoatore alla radice. Dovrà
avere:
- Solo i puntatori 'destro' e sinistro', come attributi non staitic
- Un costruttore di default che inserisca il nuovo nodo creato nell'albero
- Un distruttore virtuale che distrugga l'intero albero
- Un metodo virtuale puro 'confronto' privato con un parametro di tipo void *, che confronta il nodo
corrente con quello passato per parametro
- Un metodo virtuale puro 'stampa' privato che stampa il nodo corrente
- Un metodo pubblico 'traversa' che stampa, tramite il memtodo stampa l'intero albero
- Un metodo statico pubblico 'elimina' che esegua la 'delete' dell'intero albero
- Una classe alberoIntero che derivi in modo privato da albero, la quale:
- Possegga due attributi interi chiave e valore
- Implementi i metodi virtuali pure di albero
- Renda visibili i metodi 'traversa' e 'elimina'
- Tutti gli attributi devono essere privati
note
- I file in c++ hanno estensione .cc in Linux
- Il compilatore sotto Linux si chiama cc, anche per il C++
- Un semplice editor, alternativo a vi e' joe,
oppure l'editor del midnight commander (mc) o avviare X windows (comando startx) es usare gnotepad+
(menù di avvio, applicazioni) e compilare in una finestra terminale (menù di avvio, utilities, Regualr Xterm)
|