diff options
clean up
1 files changed, 0 insertions, 41 deletions
| -rw-r--r-- | Sem. 13/Figures/Shape.h | 41 |
diff --git a/Sem. 13/Figures/Shape.h b/Sem. 13/Figures/Shape.h deleted file mode 100644 index 62f5c41..0000000 --- a/Sem. 13/Figures/Shape.h +++ /dev/null @@ -1,41 +0,0 @@ -#pragma once -#include <iostream> - -class Shape // Abstract class - no instances of Shape are allowed! -{ -protected: - struct point - { - point() :x(0), y(0){} - point(int x, int y) :x(x), y(y){} - int x; - int y; - double getDist(const point& other) const - { - int dx = x - other.x; - int dy = y - other.y; - - return sqrt(dx*dx + dy*dy); - } - }; - const point& getPointAtIndex(size_t index) const; -private: - point* points; - size_t pointsCount; - - void copyFrom(const Shape& other); - void free(); - - -public: - Shape(size_t pointsCount); - - Shape(const Shape& other); - Shape& operator=(const Shape& other); - virtual ~Shape(); //!!!!!! - - void setPoint(size_t pointIndex, int x, int y); - - virtual double getArea() const = 0; //pure virtual - virtual double getPer() const = 0; // pure virtual -};
\ No newline at end of file |
