diff options
Add files via upload
5 files changed, 15 insertions, 9 deletions
| -rw-r--r-- | Polymorphism/Farm(cloneFunction)/Animal.hpp | 10 | ||||
| -rw-r--r-- | Polymorphism/Farm(cloneFunction)/Cat.hpp | 3 | ||||
| -rw-r--r-- | Polymorphism/Farm(cloneFunction)/Cow.hpp | 2 | ||||
| -rw-r--r-- | Polymorphism/Farm(cloneFunction)/Dog.hpp | 2 | ||||
| -rw-r--r-- | Polymorphism/Farm(cloneFunction)/Farm.hpp | 7 |
diff --git a/Polymorphism/Farm(cloneFunction)/Animal.hpp b/Polymorphism/Farm(cloneFunction)/Animal.hpp index b04c174..0f290ca 100644 --- a/Polymorphism/Farm(cloneFunction)/Animal.hpp +++ b/Polymorphism/Farm(cloneFunction)/Animal.hpp @@ -1,11 +1,13 @@ -#include "Animal.hpp"
-
+#pragma once
+#include <iostream>
+#include <string>
+using namespace std;
class Animal
{
- String name;
+ string name;
public:
- Animal(String name)
+ Animal(string name)
{
this->name = name;
}
diff --git a/Polymorphism/Farm(cloneFunction)/Cat.hpp b/Polymorphism/Farm(cloneFunction)/Cat.hpp index 3b11228..eba7ff0 100644 --- a/Polymorphism/Farm(cloneFunction)/Cat.hpp +++ b/Polymorphism/Farm(cloneFunction)/Cat.hpp @@ -1,9 +1,10 @@ #include "Animal.hpp"
+#include <iostream>
class Cat : public Animal
{
public:
- Cat(String name) :Animal(name)
+ Cat(string name) :Animal(name)
{}
Animal* clone()
{
diff --git a/Polymorphism/Farm(cloneFunction)/Cow.hpp b/Polymorphism/Farm(cloneFunction)/Cow.hpp index 929c2b2..ba576a2 100644 --- a/Polymorphism/Farm(cloneFunction)/Cow.hpp +++ b/Polymorphism/Farm(cloneFunction)/Cow.hpp @@ -2,7 +2,7 @@ class Cow : public Animal
{
public:
- Cow(String name) :Animal(name)
+ Cow(string name) :Animal(name)
{}
Animal* clone()
{
diff --git a/Polymorphism/Farm(cloneFunction)/Dog.hpp b/Polymorphism/Farm(cloneFunction)/Dog.hpp index 7bc7ffd..9928c2a 100644 --- a/Polymorphism/Farm(cloneFunction)/Dog.hpp +++ b/Polymorphism/Farm(cloneFunction)/Dog.hpp @@ -3,7 +3,7 @@ class Dog : public Animal
{
public:
- Dog(String name) :Animal(name)
+ Dog(string name) :Animal(name)
{}
void Roar()
{
diff --git a/Polymorphism/Farm(cloneFunction)/Farm.hpp b/Polymorphism/Farm(cloneFunction)/Farm.hpp index 5dc7cc8..0d9e5e8 100644 --- a/Polymorphism/Farm(cloneFunction)/Farm.hpp +++ b/Polymorphism/Farm(cloneFunction)/Farm.hpp @@ -1,5 +1,7 @@ #include "Animal.hpp"
-
+#include "Cat.hpp"
+#include "Dog.hpp"
+#include "Cow.hpp"
// Collection of all animals
class Farm
{
@@ -46,7 +48,7 @@ bool Farm::AddAnimal(Animal* an) {
if(count == len)
return false;
- animals[count++]=c;
+ animals[count++]=an;
return true;
}
bool Farm::AddCat(std::string name)
@@ -96,3 +98,4 @@ void Farm::CopyFrom(const Farm& other) len = other.len;
count = other.count;
}
+
|
