Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include "grade.h"
- #include <iostream>
- #include <vector>
- #include <iostream>
- using namespace std;
- class Animal
- {
- public:
- virtual void sound() { cout << "i'm an animal" << endl;}
- };
- class People : public Animal
- {
- public:
- void sound() { cout << "I'm a people" << endl;}
- void loving() { cout << "I can love" << endl;}
- };
- int main()
- {
- vector<Animal*> world;
- Animal* animal = new Animal();
- Animal* people = new People();
- animal->sound(); // i'm an animal
- people->sound(); // i'm a people
- /*CANNOT*/
- // people->loving(); // because i'm an animal, i cannot love :(
- /* no error: because both animal and people are "animal" */
- world.push_back(animal);
- world.push_back(people);
- People* realPeople = new People();
- realPeople->sound();
- realPeople->loving(); // Ah, now i can love :x
- world.push_back(realPeople);
- //world[2]->loving(); // NOOOO, I cannot love :( because everyone now sees me as an real animal :((
- }
Advertisement
Add Comment
Please, Sign In to add comment