#include <iostream>
using namespace std;
class A
{
public:
virtual void print() { cout << "A::print" << endl; }
};
class B : public A
{
public:
virtual void print() { cout << "B::print" << endl; }
};
int main()
{
A** array = new A*[2];
array[0] = new A();
array[1] = new B();
for (int i = 0; i < 2; i++)
array[i]->print();
return 0;
}
I2luY2x1ZGUgPGlvc3RyZWFtPgoKdXNpbmcgbmFtZXNwYWNlIHN0ZDsKCmNsYXNzIEEKewpwdWJsaWM6CiAgICB2aXJ0dWFsIHZvaWQgcHJpbnQoKSB7IGNvdXQgPDwgIkE6OnByaW50IiA8PCBlbmRsOyB9Cn07CgpjbGFzcyBCIDogcHVibGljIEEKewpwdWJsaWM6CiAgICB2aXJ0dWFsIHZvaWQgcHJpbnQoKSB7IGNvdXQgPDwgIkI6OnByaW50IiA8PCBlbmRsOyB9Cn07CgppbnQgbWFpbigpCnsKICAgIEEqKiBhcnJheSA9IG5ldyBBKlsyXTsKICAgIGFycmF5WzBdID0gbmV3IEEoKTsKICAgIGFycmF5WzFdID0gbmV3IEIoKTsKICAgIGZvciAoaW50IGkgPSAwOyBpIDwgMjsgaSsrKQogICAgICAgIGFycmF5W2ldLT5wcmludCgpOwoJcmV0dXJuIDA7Cn0=