diff options
Rename Polymorphism/Figures/Farm(cloneFunction)/Animal.hpp to Polymorphism/Farm(cloneFunction)/Animal.hpp
1 files changed, 17 insertions, 0 deletions
| -rw-r--r-- | Polymorphism/Farm(cloneFunction)/Animal.hpp | 17 |
diff --git a/Polymorphism/Farm(cloneFunction)/Animal.hpp b/Polymorphism/Farm(cloneFunction)/Animal.hpp new file mode 100644 index 0000000..7f0a0ab --- /dev/null +++ b/Polymorphism/Farm(cloneFunction)/Animal.hpp @@ -0,0 +1,17 @@ +#include "Animal.hpp"
+
+class Animal
+{
+
+ String name;
+public:
+ Animal(String name)
+ {
+ this->name = name;
+ }
+ virtual void Roar() = 0;
+ virtual Animal* clone() = 0; // Всеки наследник се копира по различен начин.
+ // За това правим тази виртуална функция и всеки наследник да окаже как се копират данните му.
+ virtual ~Animal() {};
+
+};
|
