sagen, dass ich, dass ich diese Klassen:Gibt es eine Möglichkeit, dynamic_cast beim Casting zu einem Kind zu verwenden?
struct Parent {};
struct Child : public Parent {
void func() {}
};
Jetzt sagen, dass ich eine Funktion wie diese schaffen wollte:
void foo(Parent* arg) {
auto child = dynamic_cast<Child*>(arg);
if(child != nullptr) child->func();
}
Aber offensichtlich das wird mir offenbar gibt den Fehler:
dynamic_cast
:Parent
is not a polymorphic type
So kann ich nicht den dynamic_cast
Schritt tun, gibt es eine Möglichkeit, die ich validieren kann, dass arg
in der Tat einist 0 zur Laufzeit?