Skip to content

Instantly share code, notes, and snippets.

@cleak
Last active January 1, 2019 22:19
Show Gist options
  • Save cleak/57af70408062e9f0ee694f9e313a56ef to your computer and use it in GitHub Desktop.
Save cleak/57af70408062e9f0ee694f9e313a56ef to your computer and use it in GitHub Desktop.
An example class hierarchy
#include <iostream>
using namespace std;
class GenericGreeter {
public:
void Greet(const char* name) {
cout << "Hi " << name << "." << endl;
}
};
class FriendlyGreeter : public GenericGreeter {
public:
void Greet(const char* name) {
cout << "Hello " << name << "! It's a pleasure to meet you!" << endl;
}
};
int main() {
FriendlyGreeter* friendlyGreeter = new FriendlyGreeter;
GenericGreeter* genericGreeter = (GenericGreeter*)friendlyGreeter;
friendlyGreeter->Greet("Bob");
genericGreeter->Greet("Alice");
delete friendlyGreeter;
return 0;
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment