但是大部分餐到了,會打**給顧客是因為,大部分人點了外賣就不看手機,然後以不通知我為由給差評。
colleague:抽象類,用於表示需要被中介的一類對像,比如騎手和使用者都是人、聯合國聯合的都是國家等等
concretecolleague:具體實現類,表示單個物件的具體實現,比如騎手類、使用者類等等
mediator:抽象中介者類,主要實現了儲存各個需要中介者物件的介面,簡單來說就是set介面,讓你可以把每個物件都放到這個裡面去,而具體實現就看子類了
concretemediator:具體中介者物件,制定需要被中介的物件型別,並且實現set介面,並且提供**介面,常需要輸入訊息和物件
使用場景:
優點:
缺點:
實操
注:在編寫的時候,發現當由相互呼叫的類定義和宣告都寫在同乙個檔案的時候,需要注意使用class ***的率先宣告方式,這樣先宣告的可以使用後面的類,但是注意只能出現類物件定義,不可以使用類方法,因此需要較好的去設計類宣告的順序。
思維過程:
實現子類,重寫虛函式就行了
實現具體的中介類,宣告需要中介的物件並設定,然後實現需要的功能函式即可
// mediatormodel.cpp : 此檔案包含 "main" 函式。程式執行將在此處開始並結束。
//#include using namespace std;
class cperson
virtual void receivemessage(string mess) {}
}; virtual void setpersona(cperson *per) {}
virtual void setpersonb(cperson *per) {}
};class cdeliveryperson:public cperson
};class corderperson :public cperson
}; void setpersona(cperson *per)
void setpersonb(cperson *per)
void send(string mes, cperson* per)
};int main()
中介者模式
1.中間 類 namespace intermediarypattern 成員物件需要知道是哪個中介者在通知它事情 public abstract class member 各成員間要傳送訊息 public abstract void send string msg 這個方法其實是具體實施發訊息的 ...
中介者模式
中介者模式就是在物件之間的關係很複雜時用,名如其人,就像租房的黑中介一樣,如果每個房東都拿著很多租房者的資訊很麻煩,每個租房者都要拿著很多房東的資訊也麻煩,所以需要乙個中介來拿著這些資訊,租房者只需要發出租房的請求,中介會給你介紹合適的房東,房東只需要提交房屋資料就等著中介的人帶著訪客看房拿錢就行了...
中介者模式
中介者模式 mediator pattern 1 抽象中介者 mediator 角色 抽象中介者角色定義統一的介面用於各同事角色之間的通訊。具體中介者 concrete mediator 角色 具體中介者角色通過協調各同事角色實現協作行為,因此它必須依賴於各個同事角色。同事 colleague 角色...