//// ***************************************************************************** //// 版权所有(C)2023~2099 上海骄成超声波技术有限公司 //// 保留所有权利 //// ***************************************************************************** //// 作者 : 杨坚 //// 版本 : 1.0 //// 功能说明: //// 管理模式 //// ***************************************************************************** // //#ifndef __JMANAGEMODE_H__ //#define __JMANAGEMODE_H__ 1 // //#include //#include // //// 中介者接口 //class ChatRoomMediator; // //// 抽象用户类 //class User { //protected: // ChatRoomMediator* mediator; // std::string name; //public: // User(ChatRoomMediator* mediator, const std::string& name) : mediator(mediator), name(name) {} // // virtual void send(const std::string& message) = 0; // 发送消息 // virtual void receive(const std::string& message) = 0; // 接收消息 // // std::string getName() const { return name; } //}; // //// 中介者接口。实现函数 //class ChatRoomMediator { //public: // // 那个相机,那个页面,数据转换 // // 画面移动,鼠标转发 // virtual void sendMessage(const std::string& message, User* user) = 0; // virtual void addUser(User* user) = 0; //}; // // //class JManageMode : public ChatRoomMediator //{ //private: // std::vector users; // 用户列表 //public: // void sendMessage(const std::string& message, User* user) override // { // for (User* u : users) // { // // 不发送给发送者自身 // if (u != user) // { // u->receive(message); // } // } // } // // void addUser(User* user) override // { // users.push_back(user); // } //}; // //#endif //__JMANAGEMODE_H__