#include #include "direzione.h" Direzione::Direzione ( string _direzione ) { setDirezione( _direzione ); } string Direzione::getDirezione () { return direzione; } bool Direzione::setDirezione (string _direzione) { if ( (_direzione != "NORD") && (_direzione != "EST") && (_direzione != "SUD") && (_direzione != "OVEST") ) { cout << "Error: invalid direction!" << endl; direzione = "NORD"; } else direzione = _direzione; } void Direzione::operator++ ( int ) { // il parametro int �fittizio; serve a // distinguere dal pre-incremento if ( direzione == "NORD") direzione="EST"; else if ( direzione == "EST") direzione="SUD"; else if ( direzione == "SUD") direzione="OVEST"; else direzione="NORD"; } void Direzione::operator-- ( int ) { // il parametro int �fittizio; serve a // distinguere dal pre-incremento if (direzione== "NORD") direzione="OVEST"; else if (direzione== "EST") direzione="NORD"; else if (direzione== "SUD") direzione="EST"; else direzione="SUD"; } Direzione Direzione::operator -() const { if (direzione== "NORD") return Direzione("SUD"); else if (direzione== "EST") return Direzione("OVEST"); else if (direzione== "SUD") return Direzione("NORD"); else return Direzione("EST"); }