Dav*_*vid 2 c++ polymorphism inheritance pointers generic-programming
在C++中,您可以将指针声明为一种类型,然后将其指向另一种继承类型.有什么方法可以告诉你当前指的是哪个?
#include <typeinfo>
using namespace std;
class Foo
{
};
class Bar : public Foo
{
};
int main()
{
Bar bar;
Foo* foo = &bar;
bool I_WANT_THIS_TO_BE_TRUE = (typeid(*foo) == typeid(Bar));
return 0;
}
Run Code Online (Sandbox Code Playgroud)