fabio massacci [url=http://forum.ubuntu-it.org/viewtopic.php?p=4884351#p4884351][img]http://forum.ubuntu-it.org/images/icons/icona-cita.gif[/img][/url] ha scritto:ciao,
intanto Groppo e Utente non hanno nessuna necessità di ereditare da Rete, inoltre se leggi la traccia, è abbastanza evidente che il tuo prof vuole che tutte le azioni siano fatte da Rete, mentre utente e Gruppo sono solo dati, quindi io ti consiglio di definire questi due come semplici strutture, inoltre, se lo hai già studiato, potresti usare std::vector invece che i puntatori a Gruppo e Utente dentro Rete
Grazie mille, siete stati molto esaustivi. Vedrò come risolvere!SuperStep [url=http://forum.ubuntu-it.org/viewtopic.php?p=4884370#p4884370][img]http://forum.ubuntu-it.org/images/icons/icona-cita.gif[/img][/url] ha scritto:come detto da @fabio massacci, l'approccio che hai scelto e' sbagliato.
cerchiamo di analizzare il problema punto per punto: (utilizzero' dello pseudocodice di esempio)quindiLa rete ha un’elenco di utenti e un elenco di gruppi ... e dispone di tutti i metodi e delle strutture dati per aggiungere utenti e gruppi e per gestire iscrizioni degli utenti ai gruppiCodice: Seleziona tutto
class Rete { List<Utente> utenti; List<Gruppo> gruppi; Utente aggiungiUtente (/*dati*/); Gruppo aggiungiGruppo (/*dati*/); void aggiungiUtenteAGruppo(Utente utente, Gruppo gruppo); }La classe Gruppo deve contenere il nome del gruppo, la data di creazione e e l’elenco degli utenti iscrittiCodice: Seleziona tutto
class Gruppo { String nome; Date creazione List<Utente> iscritti; }La classe Utente deve contenere codice, nome, cognome ed email.parti da questo.Codice: Seleziona tutto
class Utente { String codice; String nome; String cognome; String email; }
