Quote:
Originariamente inviato da mistergks
Il seguente esercizio chiede di fare una classe coda..
La mia domanda é: ma la coda é gia implementata come le list?! E quindi posso usarla cosi?(queue <int> coda).
Utilizzare l’ereditarietà per realizzare l’interfaccia della classe CodaPerPrimaGradiAlti che implementa una coda di priorità di Marinai, in cui i marinai che entrano sono serviti in base al loro ruolo (da marinaio semplice ad ammiraglio) e, a parità di grado, nel consueto ordine (FIFO).
Beh credo che la soluzione sia questa:
Codice:
CodaPerPrimaGradiAlti : public Marinaio{
Public:
CodaPerPrimaGradiAlti();
Marinaio next();
Void push();
Private:
List <Marinaio> marinai;
};
|
list non è una coda, invece queue lo è.
La tua classe è sbagliata: una CodaPerPrimaGradiAlti (che nome orrendo!) non è un Marinaio!
L'esercizio chiede un'altra cosa riguardo all'ereditarietà. Ma essendo un esercizio lascio a te capire cosa

Infine push mi sa che gli manca qualcosa, oltre a mancare l'intera implementazione della coda a priorità.