Is it valid in C++ like in Java to pass a child class as a base class?
Example below:
class Baseclass { };
class Childclass : public Baseclass { };
void do_stuff(Baseclass *b) {
// do stuff
}
int main() {
Childclass *a = new Childclass;
do_stuff(a);
return 0;
}
In addition is it possible to create a blank pointer to a baseclass and set it to a new instnace of a child class. Another example below:
int main() {
Baseclass *a;
a = new Childclass;
return 0;
}
If neither of these cases are possible, are there workarounds?
Thanks a bunch.