#include <iostream> using namespace std; #include <typeinfo> class A { int i; public: A() { i = 1; } int get_i() { return i; } }; class B: public A { int j; public: B() { j = 2; } int get_j() { return j; } }; int main() { A *p; int x = 0; if (x) p = new A; else p = new B; if (typeid(p).name() == typeid(B*).name()) cout << ((B*)p)->get_j(); else cout << "tipuri diferite"; return 0; }