我正在阅读“拷贝并交换”。
我试着阅读一些关于“拷贝省略(Copy Elision)”的链接,但是没有完全明白它的含义。有人可以解释一下这个优化是什么意思吗,特别是以下文字是什么意思:
这不仅是方便的问题,实际上是一种优化。如果参数(s)绑定到一个左值(另一个非 const 对象),则在创建参数(s)时会自动复制对象。然而,当 s 绑定到右值(临时对象,字面量)时,通常会省略复制操作,从而避免了调用复制构造函数和析构函数。在早期版本的赋值运算符中,当引用绑定到右值时,并不会发生拷贝省略。这会导致多创建和销毁一个额外的对象。