首先是宣告乙個rand類作為父類,然後兩個子類randnumber類和randoperation類,分別是隨機生成0~9的數字和各種符號。
如果加上工廠的話,就是再寫個randfactory類,然後生產不同的兩個類物件。(不過我寫了工廠,**中具體卻沒有實現它,感覺用不到。)
class rand
;class randnumber : public rand
;class randoperation : public rand
;class randfactory // 隨機數工廠
return temp;
}};
對於這個學習的話,我是通過看別人的部落格心得,畢竟這也是一種設計模式(工廠模式、抽象工廠模式之類的等等),或者看看官方文件。不過看別人寫得文章就已經可以很好的理解了。
所謂的簡單工廠模式,通過引數傳遞來決定要建立哪乙個具體產品。
若不需延遲例項化(將例項化放到子類中),則在factory中增加對應的建立方法即可,如:product* createconcreteproduct(int i);
若需要延遲例項化,則在抽象factory與具體concretefactory中增加相應方法,在concretefactory中實現方法product* createconcreteproduct(int i)
構造派生類
include include 繼承 構造派生類 using namespace std class student student 這個就是預設建構函式。就不能再有student std cout student 進一步解釋 對於student string pname noname 不輸入引數是...
生成派生類
1.吸收基類成員 將基類成員全盤吸收 派生類包含了除構造和析構函式之外所有成員。定義派生類後自動完成,無法干預 2.改造基類成員 1 基類成員訪問控制問題,依靠派生類定義時的繼承方式來控制。2 對基類資料或函式成員覆蓋與隱藏。同名隱藏 申明了乙個與基類成員同名的新成員 if是成員函式則參數列必須相同...
派生類習題
class person 建立乙個派生類student,增加以下成員資料 int id 學號 float cpp score cpp上機成績 float cpp count cpp上機考勤 float cpp grade cpp總評成績 總評成績計算規則 cpp grade cpp score 0....