В коде ниже строка была перенесена в s2, поэтому s2 должна указывать на память, на которую указывала строка. По сути, он должен иметь тот же адрес. Но при печати они указывают на разные адреса. Я не понимаю, действительно ли переезд произошел.
Код: Выделить всё
void test1(std::string&& str) {
std::string s2 = std::move(str);
std::cout
Источник: [url]https://stackoverflow.com/questions/78157805/objects-printing-different-address-after-using-stdmove[/url]
Мобильная версия