From 7f4cfc6c2114b81bc480f05ceebc643598a92d25 Mon Sep 17 00:00:00 2001 From: angeld55 Date: Fri, 28 May 2021 14:27:39 +0300 Subject: added sem 14 --- Sem. 14/ShapesCollection/ShapesCollection.h | 33 +++++++++++++++++++++++++++++ 1 file changed, 33 insertions(+) create mode 100644 Sem. 14/ShapesCollection/ShapesCollection.h (limited to 'Sem. 14/ShapesCollection/ShapesCollection.h') diff --git a/Sem. 14/ShapesCollection/ShapesCollection.h b/Sem. 14/ShapesCollection/ShapesCollection.h new file mode 100644 index 0000000..9077c74 --- /dev/null +++ b/Sem. 14/ShapesCollection/ShapesCollection.h @@ -0,0 +1,33 @@ +#include "Circle.h" +#include "Rectangle.h" +#include "Triangle.h" +#include "Rhombus.h" +#include "Square.h" +#include + +class ShapesCollection +{ + std::vector collection; + + void free(); + void copyFrom(const ShapesCollection& other); + +public: + + //factory + + void addCircle(double x, double y, double radius); + void addRectangle(double x1, double y1, double x3, double y3); + void addTriangle(double x1, double y1, double x2, double y2, double x3, double y3); + void addRhombus(double x1, double y1, double x2, double y2); + void addSquare(double x1, double y2, double sideLength); + + void printAreas(); + void printPers(); + + ShapesCollection() = default; + ShapesCollection(const ShapesCollection& other); + ShapesCollection& operator=(const ShapesCollection& other); + + ~ShapesCollection(); +}; \ No newline at end of file -- cgit v1.3.1-23-gd82d