I membri di una classe sono collettivamente i campi e i metodi; ho detto membro quindi intendendo metodo, come mi sembrava fosse evidente dal codice.Originariamente inviato da Zeldic
1) Tu mi dici che deve essere un membro privato della classe, ma poi qui lo utilizzi come se fosse un metodo con lo stesso nome..
Questo è uno dei classici compromessi: uso un campo che punta all'ultimo elemento (pro: è veloce accedere all'ultimo elemento, contro: lo devi tenere sempre aggiornato) o un metodo che lo trovi (pro: non c'è nulla da tenere aggiornato; contro: bisogna scorrere tutta la lista per arrivare all'ultimo elemento)? A te la scelta, ma nel caso in cui usi il primo metodo devi essere sicuro che esso sia sempre aggiornato.Ho risolto comunque diversamente con la creazione di un semplice puntatore all'ultimo elemento nella parte privata;
La prima possibilità sì, nello specifico, restituisce il più piccolo valore rappresentabile da un int (tipicamente su piattaforme a 32 bit -2147483648) considerato come "numero magico", ossia come un numero che il chiamante non deve interpretare come effettivo valore dell'elemento appena tolto, ma come segnalatore che la lista è vuota. In effetti però sarebbe meglio rendere più esplicito questo comportamento bloccando i tentativi di inserire elementi con quel valore ed esponendo il numero magico agli utilizzatori della classe in maniera più chiara, ad esempio tramite un metodo o un campo const.per rendere appunto più pulito il codice.. Ma mi dovrebbero restituire qualche valore?
Il secondo metodo usa le eccezioni, che sono il metodo preferito in C++ per segnalare gli errori. Se tuttavia non le hai mai studiate, forse è meglio lasciare stare.
Sì, perché nel codice del main tu non stai visualizzando quello che ti restituisce il metodo, che di suo non visualizza nulla sullo schermo. Questo fatto è essenziale per un design pulito: una classe come coda si deve limitare a gestire i dati, e lasciare completamente da parte l'interazione con l'utente, che deve invece essere gestita dal codice chiamante.Perché così non succede nulla in esecuzione.. E ' normale che non si veda nulla?
Panzerotti...In ogni caso sei invitato ad una panzerottata giù dalle mie parti!!![]()
![]()
![]()