在《家電清洗管理系統》中,可以使用C++多態技術來實現不同類型的家電清洗任務、 員工信息等功能的統一接口和操作,提高系統的靈活性和可擴展性。 ```cpp #include <iostream> #include <string> // 基類:家電清洗任務 class CleaningTask { public: CleaningTask(std::string customerName) : m_customerName(customerName) {} virtual void performTask() { std::cout << "Performing cleaning task for customer: " << m_customerName << std::endl; } virtual ~CleaningTask() {} protected: std::string m_customerName; }; // 洗衣機清洗任務 class WashingMachineTask : public CleaningTask { public: WashingMachineTask(std::string customerName) : CleaningTask(customerName) {} void performTask() override { std::cout << "Performing washing machine cleaning task for customer: " << m_customerName << std::endl; } }; // 空調清洗任務 class AirConditionerTask : public CleaningTask { public: AirConditionerTask(std::string customerName) : CleaningTask(customerName) {} void performTask() override { std::cout << "Performing air conditioner cleaning task for customer: " << m_customerName << std::endl; } }; int main() { CleaningTask* tasks[2]; //用基類指針指向子類對象,繼而調用子類方法 tasks[0] = new WashingMachineTask("Alice"); tasks[1] = new AirConditionerTask("Bob"); for (int i = 0; i < 2; i++) { tasks[i]->performTask(); } for (int i = 0; i < 2; i++) { delete tasks[i]; } return 0; } ``` 示例中,定義了一個基類`CleaningTask`和兩個派生類`WashingMachineTask` 和`AirConditionerTask`,它們分別代表不同類型的家電清洗任務。 通過使用多態技術,可以在運行時根據對象的實際類型調用正確的方法。 在`main`函數中,創建了一個包含兩個不同類型家電清洗任務的數組, 并通過循環調用各個任務的`performTask`方法。 最后,記得釋放動態分配的內存。 這樣,通過多態技術,可以輕松地擴展系統支持更多類型的家電清洗任務, 而不需要修改現有代碼。 |
|