Website Summary Files Commits Branches @commit @diff @stats
path: root / Sem. 14 / ShapesCollection / Shape.h
diff options
context:
space:
mode:
Commitcbe098fdaf6509b6a3c8bd33b3064d8f620dd58c (patch)
Author
 angeld55 <angel_dimitriev@abv.bg>
2021-05-28 16:45:24 +0300
Committer
 angeld55 <angel_dimitriev@abv.bg>
2021-05-28 16:45:24 +0300
Filesbdc851a846d1f81fcc4edf4fb6292bb0a1719a9a /Sem. 14/ShapesCollection/Shape.h
Object-oriented_programming_FMI-cbe098fdaf6509b6a3c8bd33b3064d8f620dd58c.tar
Object-oriented_programming_FMI-cbe098fdaf6509b6a3c8bd33b3064d8f620dd58c.tar.gz
Object-oriented_programming_FMI-cbe098fdaf6509b6a3c8bd33b3064d8f620dd58c.zip
Parent7f4cfc6c2114b81bc480f05ceebc643598a92d25 (diff)
sem 14
1 files changed, 0 insertions, 43 deletions
-rw-r--r--Sem. 14/ShapesCollection/Shape.h43
diff --git a/Sem. 14/ShapesCollection/Shape.h b/Sem. 14/ShapesCollection/Shape.h
deleted file mode 100644
index caf7919..0000000
--- a/Sem. 14/ShapesCollection/Shape.h
+++ /dev/null
@@ -1,43 +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(double x, double y) :x(x), y(y){}
- double x;
- double 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, double x, double y);
-
- virtual double getArea() const = 0; //pure virtual
- virtual double getPer() const = 0; // pure virtual
-
- virtual Shape* clone() const = 0; //
-}; \ No newline at end of file