91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

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

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

C++如何設計并構建不變量

發布時間:2021-11-25 13:58:52 來源:億速云 閱讀:140 作者:iii 欄目:大數據

這篇文章主要講解了“C++如何設計并構建不變量”,文中的講解內容簡單清晰,易于學習與理解,下面請大家跟著小編的思路慢慢深入,一起來研究和學習“C++如何設計并構建不變量”吧!

E.4:圍繞不變量設計錯誤處理策略

Reason(原因)

To use an object it must be in a valid state (defined formally or informally by an invariant) and to recover from an error every object not destroyed must be in a valid state.

為了使用對象,它一定要處于有效狀態(通過不變量形式化或非形式化定義)并且為了從錯誤中恢復,所有沒有銷毀的對象必須處于有效狀態。

Note(注意)

An invariant is a logical condition for the members of an object that a constructor must establish for the public member functions to assume.

不變量是一個適用于對象成員的邏輯條件,這個條件必須有構造函數建立,可以作為公有成員函數的前提條件。

E.5: Let a constructor establish an invariant, and throw if it cannot

E.5:讓構造函數建立不變量,如果不能就拋異常

Reason(原因)

Leaving an object without its invariant established is asking for trouble. Not all member functions can be called.

建立一個對象卻沒有建立不變量是在找麻煩。不是所有成員函數都是可以被調用的。

Example(示例)

class Vector {  // very simplified vector of doubles    // if elem != nullptr then elem points to sz doublespublic:    Vector() : elem{nullptr}, sz{0}{}    Vector(int s) : elem{new double[s]}, sz{s} { /* initialize elements */ }    ~Vector() { delete [] elem; }    double& operator[](int s) { return elem[s]; }    // ...private:    owner<double*> elem;    int sz;};

類不變量-這里通過注釋聲明-通過構造函數建立了。如果不能分配要求的內存,new操作會拋出異常。運算符,特別是下標運算符依靠不變量。參見:如果不能構建有效的對象,就拋出異常。

Enforcement(實施建議)

Flag classes with private state without a constructor (public, protected, or private).

標記那些沒有構造函數(公有的,私有的或保護的)卻有私有成員的類。

感謝各位的閱讀,以上就是“C++如何設計并構建不變量”的內容了,經過本文的學習后,相信大家對C++如何設計并構建不變量這一問題有了更深刻的體會,具體使用情況還需要大家實踐驗證。這里是億速云,小編將為大家推送更多相關知識點的文章,歡迎關注!

向AI問一下細節

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

c++
AI

阆中市| 梅河口市| 孝感市| 印江| 张北县| 二连浩特市| 岳阳市| 石城县| 浏阳市| 当涂县| 定陶县| 塘沽区| 女性| 永胜县| 建水县| 伊春市| 奇台县| 昌吉市| 蚌埠市| 黄石市| 张家界市| 区。| 东阳市| 尼勒克县| 屏南县| 芜湖县| 华安县| 龙口市| 普洱| 太白县| 建湖县| 东莞市| 元谋县| 兰州市| 东至县| 神池县| 吉木乃县| 务川| 黄山市| 九江市| 阜平县|