1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 | #include <iostream> #include <cstring> struct A { void clear() { memset(this, 0, sizeof(A)); } private: // but if you remove this "private", it won't overwrite B::x anymore! int age; char type; }; struct B : A { short x; B():x(42) { } }; int main() { B b; b.clear(); std::cout << b.x; } |
I2luY2x1ZGUgPGlvc3RyZWFtPgojaW5jbHVkZSA8Y3N0cmluZz4KIApzdHJ1Y3QgQSB7IAogIHZvaWQgY2xlYXIoKSB7IG1lbXNldCh0aGlzLCAwLCBzaXplb2YoQSkpOyB9IAogCnByaXZhdGU6IC8vIGJ1dCBpZiB5b3UgcmVtb3ZlIHRoaXMgInByaXZhdGUiLCBpdCB3b24ndCBvdmVyd3JpdGUgQjo6eCBhbnltb3JlIQogIGludCBhZ2U7IAogIGNoYXIgdHlwZTsgCn07CiAKc3RydWN0IEIgOiBBIHsKICBzaG9ydCB4OwogIEIoKTp4KDQyKSAKICAgeyB9Cn07CiAKaW50IG1haW4oKSB7CiAgQiBiOwogIGIuY2xlYXIoKTsKICBzdGQ6OmNvdXQgPDwgYi54Owp9
-
upload with new input
-
result: Success time: 0s memory: 2828 kB returned value: 0
0


