Website Summary Files Commits Branches @commit @diff @stats
path: root / Sem. 13 / Farm / Collection / Farm.h
diff options
context:
space:
mode:
1 files changed, 24 insertions, 0 deletions
-rw-r--r--Sem. 13/Farm/Collection/Farm.h24
diff --git a/Sem. 13/Farm/Collection/Farm.h b/Sem. 13/Farm/Collection/Farm.h
new file mode 100644
index 0000000..57b1494
--- /dev/null
+++ b/Sem. 13/Farm/Collection/Farm.h
@@ -0,0 +1,24 @@
+#pragma once
+#include "../Animals/Animal.h"
+
+class Farm
+{
+ Animal** animals;
+ size_t animalsCount;
+ size_t capacity;
+
+ void free();
+ void copyFrom(const Farm& other);
+ void resize();
+
+public:
+ Farm();
+ Farm(const Farm& other);
+ Farm& operator=(const Farm& other);
+ ~Farm();
+
+ void addAnimal(const Animal& animal);
+
+ void allSayHello() const;
+
+};