Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include "linkedList.h"
- #include <cstring>
- Point::Point() {
- _name = nullptr;
- _x = 0;
- _y = 0;
- next = NULL;
- }
- Point::Point(double x,double y) {
- const char* name = "Miejsce nieznane";
- _name = new char[strlen(name)+1];
- for(int i=0; i<(int)strlen(name)+1; i++) {
- _name[i] = name[i];
- }
- _x = x;
- _y = y;
- next = NULL;
- }
- Point::Point(const char* name,double x,double y) {
- _name = new char[strlen(name)+1];
- for(int i=0; i<(int)strlen(name)+1; i++) {
- _name[i] = name[i];
- }
- _x = x;
- _y = y;
- next = NULL;
- }
- Point::Point(const Point& oldPoint) {
- _name = new char[strlen(oldPoint._name)+1];
- for(int i=0; i<(int)strlen(oldPoint._name)+1; i++) {
- _name[i] = oldPoint._name[i];
- }
- _x = oldPoint._x;
- _y = oldPoint._y;
- next = oldPoint -> next;
- }
- Point::Point(Point&& oldPoint) {
- _x = oldPoint._x;
- _y = oldPoint._y;
- _name = oldPoint._name;
- oldPoint._x = 0;
- oldPoint._y = 0;
- oldPoint._name = nullptr;
- next = oldPoint -> next;
- oldPoint -> next = NULL;
- }
- bool Point::operator==(Point& reference)
- {
- if(this -> _x == reference._x)
- {
- if(this -> _y == reference._y)
- return true;
- }
- else
- return false;
- }
- bool Point::operator>(Point& reference)
- {
- if(this -> _x > reference._x)
- {
- return true;
- }
- else if(this -> _x == reference._x)
- if(this -> _y > reference._y)
- return true;
- else
- return false;
- }
- bool Point::operator<(Point& reference)
- {
- if(this -> _x < reference._x)
- {
- return true;
- }
- else if(this -> _x == reference._x)
- if(this -> _y < reference._y)
- return true;
- else
- return false;
- }
- std::ostream& Point::operator<<(ostream& Stream, const Point& reference)
- {
- Stream<< reference._name << "(" << reference._x << ", " << reference._y << ")";
- return Stream;
- }
- void Point::fullPrint() {
- if(_name == nullptr) {
- std::cout << "NULL (" << _x << ", " << _y << ")" << '\n';
- }
- else {
- std::cout << _name << " (" << _x << ", " << _y << ")" << '\n';
- }
- }
- void Point::changeName(const char* newName) {
- delete[] _name;
- _name = new char[strlen(newName)+1];
- for(int i=0; i<(int)strlen(newName)+1; i++) {
- _name[i] = newName[i];
- }
- }
- void Point::move(double dx,double dy) {
- _x += dx;
- _y += dy;
- }
- Point::~Point() {
- delete[] _name;
- delete next;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement