我对此代码的工作非常困惑:
#include <string>
int main() {
int test1 = 0;
std::string test2;
std::move(test1);
// move(test1);
move(test2);
return 0;
}
我没有将using namespace std
放在任何地方,也没有using std::move
。最奇怪的是,它只适用于std::string
!如果我取消注释注释行,它就不会编译!
有人能解释一下这里发生了什么吗?谢谢!