#include <iostream>
using namespace std;
#include <iostream>
using namespace std;
class MyClass
{
string& Str;
public:
MyClass(string& str) : Str(str)
{
};
void SetString(string& str)
{
Str = str;
}
string GetString() const
{
return Str;
}
};
void fn(const MyClass& myClassInstance)
{
string str2{"str2"};
myClassInstance.SetString(str2);
}
int main() {
string str{"str1"};
MyClass myObj{str};
cout << myObj.GetString() << endl;
fn(myObj);
cout << myObj.GetString() << endl;
return 0;
}
I2luY2x1ZGUgPGlvc3RyZWFtPgoKdXNpbmcgbmFtZXNwYWNlIHN0ZDsKCiNpbmNsdWRlIDxpb3N0cmVhbT4KdXNpbmcgbmFtZXNwYWNlIHN0ZDsKCmNsYXNzIE15Q2xhc3MKewogICAgc3RyaW5nJiBTdHI7CgogICAgcHVibGljOgogICAgTXlDbGFzcyhzdHJpbmcmIHN0cikgOiBTdHIoc3RyKQogICAgewoKICAgIH07CgoKICAgIHZvaWQgU2V0U3RyaW5nKHN0cmluZyYgc3RyKQogICAgewogICAgICAgIFN0ciA9IHN0cjsKICAgIH0KICAgIHN0cmluZyBHZXRTdHJpbmcoKSBjb25zdAogICAgewogICAgICAgIHJldHVybiBTdHI7CiAgICB9Cn07Cgp2b2lkIGZuKGNvbnN0IE15Q2xhc3MmIG15Q2xhc3NJbnN0YW5jZSkKewogICAgc3RyaW5nIHN0cjJ7InN0cjIifTsKICAgIG15Q2xhc3NJbnN0YW5jZS5TZXRTdHJpbmcoc3RyMik7Cn0KCmludCBtYWluKCkgewogICAgc3RyaW5nIHN0cnsic3RyMSJ9OwogICAgTXlDbGFzcyBteU9iantzdHJ9OwogICAgY291dCA8PCBteU9iai5HZXRTdHJpbmcoKSA8PCBlbmRsOwogICAgZm4obXlPYmopOwogICAgY291dCA8PCBteU9iai5HZXRTdHJpbmcoKSA8PCBlbmRsOwogICAgcmV0dXJuIDA7Cn0K