C++ PRIMER问题
Quote类添加了下面两个函数
virtual Quote* clone() const &{return new Quote(*this);}
virtual Quote* clone() &&{return new Quote(std::move(*this));}
为什么第二个不能是:
virtual Quote* clone() &&{return new Quote(*this);}
难道函数用了&&限定就一定要先把*this转换成右值再进行操作?
但是改成第三个式子后程序可以正常运行。
所以为什么书上要用std::move(*this))?