Я хочу сначала создать объект родительского класса и в соответствии с некоторым условием создать дочерний объект дочернего класса и поместить его в родительский объект.Теперь, после передачи объекта в какую-либо функцию, этой функции необходимо получить доступ к методу дочернего класса.Пожалуйста, смотрите код для уточнения.
class Parent {
virtual f(){
print('Parent');
}
}
class Child: public Parent{
virtual f(){
print('Child')
}
}
void do_something(Parent &obj){
obj.f(); // this will print Child
}
int main(){
Parent obj;
if(cond){
// This is my actual question
// Not sure how to create a child obj here and put it into parent obj
Child obj = dynamic_cast<Child>(obj);
}
do_something(obj) // pass the child obj
}