假设我有一个抽象基类Parent和子类Child1和Child2。如果我有一个函数接受Parent*类型的参数,是否有一种方法(也许是通过RTTI),可以在运行时确定该函数实际接收到的是Child1*还是Child2*?
迄今为止,我的RTTI经验是,当foo是Parent*类型时,无论foo属于哪个子类,typeid(foo)都返回typeid(Parent*)。
迄今为止,我的RTTI经验是,当foo是Parent*类型时,无论foo属于哪个子类,typeid(foo)都返回typeid(Parent*)。
Parent*
总是一个Parent*
。它永远不会是一个Child*
。你想要问的是它所指向的东西的类型是什么。 - Kerrek SB