溫馨提示×

溫馨提示×

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

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

C++重載的單目運算符有什么作用

發(fā)布時間:2021-11-26 15:43:26 來源:億速云 閱讀:124 作者:iii 欄目:大數(shù)據(jù)

本篇內容主要講解“C++重載的單目運算符有什么作用”,感興趣的朋友不妨來看看。本文介紹的方法操作簡單快捷,實用性強。下面就讓小編來帶大家學習“C++重載的單目運算符有什么作用”吧!

C.166: 重載的單目運算符&只能用于智能指針和引用

Reason(原因)

取地址運算符&是C++的基本要素,C++語義的很多地方為它設定了默認含義。

Example(示例)

class Ptr { // a somewhat smart pointer
   Ptr(X* pp) :p(pp) { /* check */ }
   X* operator->() { /* check */ return p; }
   X operator[](int i);
   X operator*();
private:
   T* p;
};

class X {
   Ptr operator&() { return Ptr{this}; }
   // ...
};
Note(注意)

如果你要"招惹"&運算符,一定要確保它的結果類型和->,[],*和 . 相匹配。注意 . 運算符現(xiàn)在不能被重載,因此不可能實現(xiàn)完美系統(tǒng)。

Enforcement(實施建議)

不好辦。如果定制了&運算符卻沒有為結果定義->運算符,報警。

到此,相信大家對“C++重載的單目運算符有什么作用”有了更深的了解,不妨來實際操作一番吧!這里是億速云網站,更多相關內容可以進入相關頻道進行查詢,關注我們,繼續(xù)學習!

向AI問一下細節(jié)

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

c++
AI