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 | #include<memory> #include<stdio.h> #include<map> #include<set> #include<string> using namespace std; struct StubClass { weak_ptr<string> b; int c; friend bool operator==(StubClass x,StubClass y); friend bool operator<(StubClass x,StubClass y); StubClass(weak_ptr<string> x):b(x){c=5;} }; bool operator==(StubClass d,StubClass c) { return d.b==c.b;} bool operator<(StubClass d,StubClass c) { return d.b<c.b; } int main() { shared_ptr<string> spPtr(new string("Hello")); weak_ptr<string> wpPtr(spPtr); StubClass hello(wpPtr); set<StubClass> helloSet; helloSet.insert(hello); if(helloSet.find(StubClass(wpPtr))!=helloSet.end()) printf("YAYA"); else puts("Bye"); } |
I2luY2x1ZGU8bWVtb3J5PgojaW5jbHVkZTxzdGRpby5oPgojaW5jbHVkZTxtYXA+CiNpbmNsdWRlPHNldD4KI2luY2x1ZGU8c3RyaW5nPgp1c2luZyBuYW1lc3BhY2Ugc3RkOwpzdHJ1Y3QgU3R1YkNsYXNzCgl7Cgl3ZWFrX3B0cjxzdHJpbmc+IGI7CglpbnQgYzsKCWZyaWVuZCBib29sIG9wZXJhdG9yPT0oU3R1YkNsYXNzIHgsU3R1YkNsYXNzIHkpOwoJZnJpZW5kIGJvb2wgb3BlcmF0b3I8KFN0dWJDbGFzcyB4LFN0dWJDbGFzcyB5KTsKCVN0dWJDbGFzcyh3ZWFrX3B0cjxzdHJpbmc+IHgpOmIoeCl7Yz01O30JCgl9Owpib29sIG9wZXJhdG9yPT0oU3R1YkNsYXNzIGQsU3R1YkNsYXNzIGMpIHsgcmV0dXJuIGQuYj09Yy5iO30KYm9vbCBvcGVyYXRvcjwoU3R1YkNsYXNzIGQsU3R1YkNsYXNzIGMpIHsgcmV0dXJuIGQuYjxjLmI7IH0KCgppbnQgbWFpbigpCnsKc2hhcmVkX3B0cjxzdHJpbmc+IHNwUHRyKG5ldyBzdHJpbmcoIkhlbGxvIikpOwp3ZWFrX3B0cjxzdHJpbmc+IHdwUHRyKHNwUHRyKTsKU3R1YkNsYXNzIGhlbGxvKHdwUHRyKTsKc2V0PFN0dWJDbGFzcz4gaGVsbG9TZXQ7CmhlbGxvU2V0Lmluc2VydChoZWxsbyk7CmlmKGhlbGxvU2V0LmZpbmQoU3R1YkNsYXNzKHdwUHRyKSkhPWhlbGxvU2V0LmVuZCgpKSBwcmludGYoIllBWUEiKTsKZWxzZSBwdXRzKCJCeWUiKTsKfQoK
-
upload with new input
-
result: Runtime error time: 0s memory: 11128 kB signal: 11 (SIGSEGV)


