struct Object {
int data[10];
};
struct A : public Object {
void Init();
};
void A::Init() {
data[0] = 24;
}
struct B : public Object {
void Init();
};
void B::Init() {
data[0] = 48;
}
Object* gpObj;
A a;
B b;
int main() {
a.Init();
b.Init();
// gpObj = &a;
}
c3RydWN0IE9iamVjdCB7CglpbnQgZGF0YVsxMF07Cn07CiAKc3RydWN0IEEgOiBwdWJsaWMgT2JqZWN0IHsKCXZvaWQgSW5pdCgpOwp9OwoKCnZvaWQgQTo6SW5pdCgpIHsKCWRhdGFbMF0gPSAyNDsKfQoKc3RydWN0IEIgOiBwdWJsaWMgT2JqZWN0IHsKCXZvaWQgSW5pdCgpOwp9OwoKdm9pZCBCOjpJbml0KCkgewoJZGF0YVswXSA9IDQ4Owp9CgpPYmplY3QqIGdwT2JqOwpBIGE7CkIgYjsKCmludCBtYWluKCkgewoJYS5Jbml0KCk7CgliLkluaXQoKTsKCgkvLyBncE9iaiA9ICZhOwp9