C++ 中的複製和交換慣用技巧是什麼?
賦值包含 2 個步驟,分解物件的舊狀態併為其構建一個新狀態。解構函式用於執行第一步,而一個複製建構函式執行第二步。實現這兩個步驟非常簡單。但在過載賦值運算子時,這會變得非常困難。複製和交換慣用技巧就是針對這一問題提出的解決方案。
此慣用技巧使用複製建構函式構建資料的本地副本。然後使用 swap 函式用新資料交換舊資料。然後使用解構函式對臨時副本進行析構。最後我們只剩下了新資料的副本。
因此,複製和交換慣用技巧需要三樣東西 — 一個複製建構函式、一個解構函式和一個 swap 函式。swap 函式是一個非丟擲函式,用於交換類的兩個物件,即成員。注意 — 不得使用 std::swap 函式,因為其在內部使用複製建構函式和賦值運算子來實現同一目標。
廣告
資料結構
網路
關係型資料庫管理系統
作業系統
Java
iOS
HTML
CSS
Android
Python
C 程式設計
C++
C#
MongoDB
MySQL
Javascript
PHP