diff options
feat(Week09): Add solutions
1 files changed, 27 insertions, 0 deletions
| -rw-r--r-- | Week09/Exercise04/Rover.h | 27 |
diff --git a/Week09/Exercise04/Rover.h b/Week09/Exercise04/Rover.h new file mode 100644 index 0000000..4286f06 --- /dev/null +++ b/Week09/Exercise04/Rover.h @@ -0,0 +1,27 @@ +#ifndef _ROVER +#define _ROVER + +#include <ostream> +#include <istream> + +class Rover { + double x; + double y; + double forward; + + void moveDistByAngle(double dist, double angle); + +public: + Rover(); + + friend Rover& operator<(double dist, Rover& rover); + Rover& operator>(double dist); + Rover& operator^(double dist); + friend Rover& operator<<(double degrees, Rover& rover); + Rover& operator>>(double degrees); + + friend std::ostream& operator<<(std::ostream& ostr, const Rover& rover); + friend std::istream& operator>>(std::istream& istr, Rover& rover); +}; + +#endif /* _ROVER */ |
