04/01/10 9:06
il-david
Buongiorno a tutti ed auguri di buon anno Vi giro questa traccia d'esame con relativo mio abbozzo, sperando in un vostro suggerimento.
-Scrivere il codice per una classe "coordinate" che gestisce latitudine(-90.0;+90.0) e longitudine (-180.0;+180.0) di un punto. L'oggetto può essere inizializzato in fase di dichiarazione o con specifica funzione membro; ha una funzione per ottenere i valori settati; è possibile settare un oggetto a partire da somme e sottrazioni di oggetti dello stesso tipo (A=B+C; A=B-C); valori fuori dal range vengono riportati nel range tramite modulo (es: (+70.0;+100.0)+(+30.0;+120.0)=(-80.0;-140.0)). Valutare l'oppurtunità/necessità di scrivere un costruttore di copie.
I dubbi in particolare sono:
1-come faccio a stabilire un preciso range di coordinate per la
latitudine e longitudine?
2-L'oggetto può essere inizializzato in fase di dichiarazione o con
specifica funzione
membro;
3-ha una funzione per ottenere i valori settati;
4-valori fuori dal range vengono riportati
nel range tramite modulo (es: (+70.0;+100.0)+(+30.0;+120.0)=
(-80.0;-140.0)).
-Scrivere il codice per una classe "coordinate" che gestisce latitudine(-90.0;+90.0) e longitudine (-180.0;+180.0) di un punto. L'oggetto può essere inizializzato in fase di dichiarazione o con specifica funzione membro; ha una funzione per ottenere i valori settati; è possibile settare un oggetto a partire da somme e sottrazioni di oggetti dello stesso tipo (A=B+C; A=B-C); valori fuori dal range vengono riportati nel range tramite modulo (es: (+70.0;+100.0)+(+30.0;+120.0)=(-80.0;-140.0)). Valutare l'oppurtunità/necessità di scrivere un costruttore di copie.
class Coordinate { double latitudine, longitudine; public: Coordinate(double lat, double lon) : latitudine(lat), longitudine(lon) { cout<<"Costruttore..."<<endl; } Coordinate(const Coordinate& c) : latitudine(c.latitudine), longitudine(c.longitudine) { cout<<"Costruttore di copia..."<<endl; } ~Coordinate() { cout<<"Distruttore..."<<endl; } Coordinate operator+(Coordinate& o) { cout<<"Overloading +..."<<endl; Coordinate tmp(latitudine + o.latitudine, longitudine + o.longitudine); return tmp; } Coordinate operator-(Coordinate& o) { cout<<"Overloading -..."<<endl; Coordinate tmp(latitudine - o.latitudine, longitudine - o.longitudine); return tmp; } };
I dubbi in particolare sono:
1-come faccio a stabilire un preciso range di coordinate per la
latitudine e longitudine?
2-L'oggetto può essere inizializzato in fase di dichiarazione o con
specifica funzione
membro;
3-ha una funzione per ottenere i valori settati;
4-valori fuori dal range vengono riportati
nel range tramite modulo (es: (+70.0;+100.0)+(+30.0;+120.0)=
(-80.0;-140.0)).
Ultima modifica effettuata da il-david 04/01/10 18:12
aaa