我有这个代码:
string&& getString() {
string s {"test"};
return move(s);
}
我试图输出:
cout << getString() << endl;
它给了我空的输出。
当我使用:
string getString() {
string s {"test"};
return move(s);
}
有用。
我的问题:
为什么第一个不起作用?我移动了引用,所以不应该破坏本地对象?
第二个是否“复制”(不考虑 RVO)?