#include <iostream>
using namespace std;
class A{
public:
virtual void p() = 0;
};
class B: public A{
public:
virtual void p() override {
cout << "abc:" << m << endl;
};
int m;
};
void cb(void* x){
A* a = reinterpret_cast<A*>(x);
a->p();
}
int main() {
B b;
b.m = 10;
cb(&b);
// your code goes here
return 0;
}
I2luY2x1ZGUgPGlvc3RyZWFtPgp1c2luZyBuYW1lc3BhY2Ugc3RkOwoKY2xhc3MgQXsKcHVibGljOgp2aXJ0dWFsIHZvaWQgcCgpID0gMDsKfTsKCmNsYXNzIEI6IHB1YmxpYyBBewoJcHVibGljOgoJdmlydHVhbCB2b2lkIHAoKSBvdmVycmlkZSB7CgkgICBjb3V0IDw8ICJhYmM6IiA8PCBtIDw8IGVuZGw7Cgl9OwoJaW50IG07Cn07Cgp2b2lkIGNiKHZvaWQqIHgpewoJQSogYSA9IHJlaW50ZXJwcmV0X2Nhc3Q8QSo+KHgpOwoJYS0+cCgpOwp9CgppbnQgbWFpbigpIHsKCUIgYjsKCWIubSA9IDEwOwoJCgljYigmYik7CQoJLy8geW91ciBjb2RlIGdvZXMgaGVyZQoJcmV0dXJuIDA7Cn0=