1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 | #include <iostream> using namespace std; class First { public: int a; First() {}; First(int a) { this->a = a; } int getA() { return a; } virtual int getB() { cout << "getB() from super class..." << endl; return 0; } }; class Second : public First { public: int b; Second(int b) { this->b = b; } int getB() { cout << "getB() from child class..." << endl; return b; } }; int main() { First* t = new Second(2); cout << t->First::getB() << endl; } |
I2luY2x1ZGUgPGlvc3RyZWFtPgoKdXNpbmcgbmFtZXNwYWNlIHN0ZDsKCmNsYXNzIEZpcnN0IHsKICAgICAgICBwdWJsaWM6CiAgICAgICAgICAgICAgICBpbnQgYTsKICAgICAgICAgICAgICAgIEZpcnN0KCkge307CiAgICAgICAgICAgICAgICBGaXJzdChpbnQgYSkgewogICAgICAgICAgICAgICAgICAgICAgICB0aGlzLT5hID0gYTsKICAgICAgICAgICAgICAgIH0KCiAgICAgICAgICAgICAgICBpbnQgZ2V0QSgpIHsKICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIGE7CiAgICAgICAgICAgICAgICB9CgogICAgICAgICAgICAgICAgdmlydHVhbCBpbnQgZ2V0QigpIHsKICAgICAgICAgICAgICAgICAgICAgICAgY291dCA8PCAiZ2V0QigpIGZyb20gc3VwZXIgY2xhc3MuLi4iIDw8IGVuZGw7CiAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiAwOwogICAgICAgICAgICAgICAgfQp9OwoKY2xhc3MgU2Vjb25kIDogcHVibGljIEZpcnN0IHsKICAgICAgICBwdWJsaWM6CiAgICAgICAgICAgICAgICBpbnQgYjsKICAgICAgICAgICAgICAgIFNlY29uZChpbnQgYikgewogICAgICAgICAgICAgICAgICAgICAgICB0aGlzLT5iID0gYjsKICAgICAgICAgICAgICAgIH0KCiAgICAgICAgICAgICAgICBpbnQgZ2V0QigpIHsKICAgICAgICAgICAgICAgICAgICAgICAgY291dCA8PCAiZ2V0QigpIGZyb20gY2hpbGQgY2xhc3MuLi4iIDw8IGVuZGw7CiAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiBiOwogICAgICAgICAgICAgICAgfQoKfTsKCmludCBtYWluKCkgewogICAgICAgIEZpcnN0KiB0ID0gbmV3IFNlY29uZCgyKTsKICAgICAgICBjb3V0IDw8IHQtPkZpcnN0OjpnZXRCKCkgPDwgZW5kbDsKCn0K
-
upload with new input
-
result: Success time: 0s memory: 2856 kB returned value: 0
getB() from super class... 0


