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