侯磊 -
C++的移動構造函數和移動賦值運算符
什麼是移動構造
在 C++ 11 標準之前(C++ 98/03 標準中),如果想用其它對象初始化一個同類的新對象,只能藉助類中的複製(拷貝)構造函數。在C++11中,引入了右值引用,提供了左值轉右值的方法,避免了對象潛在的拷貝。而移動構造函數和移動賦值運算符也是通過右值的屬性來實現的。直觀的來講,移動構造就是將對象的狀態或者所有權從一個對象轉移到另一個對象。只是轉移,沒有內存的搬遷或者內存拷貝所以
性能優化
,
c++11
,
構造函數
,
c++