設定運算子

C++程式語言裏,設定運算子英文assignment operator)是用等號 = 符號。就像其他的C++運算子一樣,它可以作為多載

複製設定運算子是一個特別的設定運算子,通常是用來把已存在的物件指定給其他相同類別的物件。它是一個特別的成員函數,如果程式設計師沒有定義這個成員函數,那麼編譯器會自動地產生這個成員函數。編譯器產生的程式碼是以單一成員進行物件複製的動作。

複製設定運算子,這個成員函數與複製建構子的相異點在於,它一定會清除目標物件的資料成員(以及確實掌控自我設值的動作),而複製建構子不會初始化類別的資料成員。[1]

以下是原始碼的範例:

My_Array first;           // 由預設建構子做初始化動作
My_Array second(first);   // 由複製建構子做初始化動作
My_Array third = first;   // 這個也是由複製建構子做初始化動作
second = third;           // 由複製設定運算子做設定的動作

相關條目

參考資料

  1. ^ 比雅尼, 史特勞斯特魯普. The C++ Programming Language 3rd Edition. Addison-Wesley. 2000: 244. ISBN 978-0201700732.