Advertisement
Guest User

Untitled

a guest
Feb 24th, 2020
76
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 0.89 KB | None | 0 0
  1. class electrical_part
  2. {
  3. public:
  4.     electrical_part(double price):_price(price) {};
  5.    
  6.     virtual double get_price() const
  7.     {
  8.         return _price;
  9.     };
  10.     virtual void print() const = 0;
  11.  
  12. protected:
  13.     double _price;
  14. };
  15.  
  16.  
  17. class button: virtual public electrical_part
  18. {
  19. public:
  20.     button():electrical_part(2) {};
  21.    
  22.     void print() const override
  23.     {
  24.         std::cout << "Button: " << _price << std::endl;
  25.     };
  26. };
  27.  
  28. class light_bulb: virtual public electrical_part
  29. {
  30. public:
  31.     light_bulb():electrical_part(3.5) {};
  32.     void print() const override
  33.     {
  34.         std::cout << "Light bulb: " << _price << std::endl;
  35.     };
  36. };
  37.  
  38. class desk_lamp: public button, public light_bulb
  39. {
  40. public:
  41.     desk_lamp():electrical_part(6) {};
  42.    
  43.     void print() const override
  44.     {
  45.         std::cout << "Desk lamp: " << _price << std::endl;
  46.     };
  47. };
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement