Untitled

mail@pastecode.io avatar
unknown
c_cpp
2 years ago
1.1 kB
1
Indexable
Never
#ifndef INC_5_POINT_H
#define INC_5_POINT_H

#include <iostream>

class Point {

public:
    Point() : x_(0), y_(0) {}  //Конструктор за замовчуванням
    Point(double x, double y) : x_(x), y_(y) {}  //Конструктор ініціалізації
    ~Point() = default;  //Деструктор

    double x() const { return x_; } //getter для Х
    double y() const { return y_; } //getter для Y

    void setX(double x) {  x_ = x; } //setter для X
    void setY(double y) {  y_ = y; } //setter для Y

    virtual double area() { return 0; } // віртуальний метод обчислення площі. Віртуальний метод - той метод, який можна перевизначити 

    // перевантаження оператора << (оператора виводу)
    friend std::ostream& operator << (std::ostream &os, const Point &point) {
        os << point.x() << "; " << point.y();
        return os;
    }

protected: 
    double x_;
    double y_;
};


#endif //INC_5_POINT_H