class Device { public: virtual void turnOn() = 0; virtual void turnOff() = 0; virtual bool needsWarmup() {return false;};// 判斷馬達是否需要預熱 virtual void warmup() = 0; virtual ~Device() {} }; class LED : public Device { public: void turnOn() override { // 點亮 LED } void turnOff() override { // 熄滅 LED } }; class Motor : public Device { public: void turnOn() override { // 啟動馬達 } void turnOff() override { // 關閉馬達 } private: bool needsWarmup() override { return true; // 馬達需要預熱 } void warmup() override { // 預熱馬達 } };