#include <iostream>
class Test
{
public:
int val;
Test(int v)
{
val = v;
}
void operator||(Test& other)
{
this->val = 20;
other.val = 40;
}
};
int main()
{
Test a(50);
Test b(100);
std::cout << "a: " << a.val << ", b: " << b.val << std::endl;
a || b;
std::cout << "a: " << a.val << ", b: " << b.val << std::endl;
return 0;
}
I2luY2x1ZGUgPGlvc3RyZWFtPgoKY2xhc3MgVGVzdAp7CiAgcHVibGljOgoKICBpbnQgdmFsOwoKICBUZXN0KGludCB2KQogIHsKICAgIHZhbCA9IHY7CiAgfQoKICB2b2lkIG9wZXJhdG9yfHwoVGVzdCYgb3RoZXIpCiAgewogICAgdGhpcy0+dmFsID0gMjA7CiAgICBvdGhlci52YWwgPSA0MDsKICB9Cn07CgoKaW50IG1haW4oKQp7CiAgVGVzdCBhKDUwKTsKICBUZXN0IGIoMTAwKTsKCiAgc3RkOjpjb3V0IDw8ICJhOiAiIDw8IGEudmFsIDw8ICIsIGI6ICIgPDwgYi52YWwgPDwgc3RkOjplbmRsOwogIGEgfHwgYjsKICBzdGQ6OmNvdXQgPDwgImE6ICIgPDwgYS52YWwgPDwgIiwgYjogIiA8PCBiLnZhbCA8PCBzdGQ6OmVuZGw7CiAgcmV0dXJuIDA7Cn0K