I've a question regarding inheritance I've found this tutorial online, and was wondering why the output for "Dog" is actually "Animal print" I understand that Animal pointer is pointing to the address of Dog, but why isn't it printing "Dog print"?
Kindly help me out, I'm new to C++.
Below is the code:
#include <iostream>
using namespace std;
class Animal {
public:
void print();
};
void Animal::print() {
cout << "Animal print" << endl;
}
class Dog : public Animal {
public:
void print();
};
void Dog::print() {
cout << "Dog print" << endl;
}
int main() {
Dog h;
Animal *eptr = &h;
eptr->print();
eptr->Animal::print();
}
Output:
Animal print
Animal print