Untitled

 avatar
unknown
plain_text
2 years ago
802 B
3
Indexable
#ifndef INC_5_CIRCLE_H
#define INC_5_CIRCLE_H

#include <iostream>
#include "Ellipse.h"

class Circle : private Ellipse {

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

    //Обчислення площі
    double area() override {
        auto &ellipse = static_cast<Ellipse &>(*this);
        return ellipse.area();
    }

    //Функція виведення
    friend std::ostream& operator<<(std::ostream &os, const Circle &circle) {
        os << static_cast<const Ellipse&>(circle);
        return os;
    }

};
Editor is loading...