Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- class electrical_part
- {
- public:
- electrical_part(double price):_price(price) {};
- virtual double get_price() const
- {
- return _price;
- };
- virtual void print() const = 0;
- protected:
- double _price;
- };
- class button: virtual public electrical_part
- {
- public:
- button():electrical_part(2) {};
- void print() const override
- {
- std::cout << "Button: " << _price << std::endl;
- };
- };
- class light_bulb: virtual public electrical_part
- {
- public:
- light_bulb():electrical_part(3.5) {};
- void print() const override
- {
- std::cout << "Light bulb: " << _price << std::endl;
- };
- };
- class desk_lamp: public button, public light_bulb
- {
- public:
- desk_lamp():electrical_part(6) {};
- void print() const override
- {
- std::cout << "Desk lamp: " << _price << std::endl;
- };
- };
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement