在C++程式語言裡,設定運算子(英文:assignment operator)是用等號 =
符號。就像其他的C++運算子一樣,它可以作為多載。
複製設定運算子是一個特別的設定運算子,通常是用來把已存在的物件指定給其他相同類別的物件。它是一個特別的成員函式,如果程式設計師沒有定義這個成員函式,那麼編譯器會自動地產生這個成員函式。編譯器產生的程式碼是以單一成員進行物件複製的動作。
複製設定運算子,這個成員函式與複製建構子的相異點在於,它一定會清除目標物件的資料成員(以及確實掌控自我設值的動作),而複製建構子不會初始化類別的資料成員。[1]
以下是原始碼的範例:
My_Array first; // 由預設建構子做初始化動作
My_Array second(first); // 由複製建構子做初始化動作
My_Array third = first; // 這個也是由複製建構子做初始化動作
second = third; // 由複製設定運算子做設定的動作
相關條目
參考資料
Wikiwand in your browser!
Seamless Wikipedia browsing. On steroids.
Every time you click a link to Wikipedia, Wiktionary or Wikiquote in your browser's search results, it will show the modern Wikiwand interface.
Wikiwand extension is a five stars, simple, with minimum permission required to keep your browsing private, safe and transparent.
Remove ads