溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

C++賦值運算符返回T&怎么實現

發(fā)布時間:2021-11-26 14:00:24 來源:億速云 閱讀:338 作者:iii 欄目:大數據

這篇文章主要介紹“C++賦值運算符返回T&怎么實現”,在日常操作中,相信很多人在C++賦值運算符返回T&怎么實現問題上存在疑惑,小編查閱了各式資料,整理出簡單好用的操作方法,希望對大家解答”C++賦值運算符返回T&怎么實現”的疑惑有所幫助!接下來,請跟著小編一起來學習吧!

F.47 賦值運算符應該返回T&。

Reason(原因)

運算符重載的習慣(特別是值類型)是在operator=(const T&)中執(zhí)行賦值操作然后返回(非常量)*this。這保證了和標準庫類型的一致性而且遵守了“像整數一樣動作”的準則。

譯者注:“像整數一樣動作”應該說的是,使用重載的賦值運算符的代碼,看起來要和使用整數賦值運算符的代碼具有同樣的形式。

Note(注意)

歷史上存在過某些保證賦值操作會返回const T&的準則。其主要目的是避免(a=b)=c--形式的代碼,但這種代碼的普遍性還不足以將其視為和對標準類型一致性的違反。

Example(示例)

class Foo{ public:    ...    Foo& operator=(const Foo& rhs) {      // Copy members.      ...      return *this;    }};
Enforcement(實施建議)

This should be enforced by tooling by checking the return type (and return value) of any assignment operator.

應該強制對任何賦值運算符的返回值類型(和返回值)進行工具化檢查。

到此,關于“C++賦值運算符返回T&怎么實現”的學習就結束了,希望能夠解決大家的疑惑。理論與實踐的搭配能更好的幫助大家學習,快去試試吧!若想繼續(xù)學習更多相關知識,請繼續(xù)關注億速云網站,小編會繼續(xù)努力為大家?guī)砀鄬嵱玫奈恼拢?/p>

向AI問一下細節(jié)

免責聲明:本站發(fā)布的內容(圖片、視頻和文字)以原創(chuàng)、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

c++
AI