Advertisement
Ejejejejejjr

Наследование одинаковых методов через виртуальные функции

Dec 28th, 2020
272
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 0.75 KB | None | 0 0
  1. #include <iostream>
  2. #include <string>
  3.  
  4. //через виртуальные функции
  5.  
  6. class Car
  7. {
  8. public:
  9.     //перегрузка виртуальной функции для класса Car
  10.     virtual void Use()
  11.     {
  12.         std::cout << "Я еду" << std::endl;
  13.     }
  14. };
  15.  
  16.  
  17. class Airplane : public Car
  18. {
  19. public:
  20.     //перегрузка виртуальной функции для класса Airplane
  21.     void Use() override
  22.     {
  23.         std::cout << "Я лечу" << std::endl;
  24.     }
  25. };
  26.  
  27.  
  28.  
  29. class FlyingCar
  30. {
  31. public:
  32.     void Print(Car *car)
  33.     {
  34.         //использование одной из перегрузок
  35.         car->Use();
  36.     }
  37.    
  38.    
  39. };
  40.  
  41.  
  42. int main(int argc, char *argv[])
  43. {
  44.     setlocale(LC_ALL, "Rus");
  45.     srand(time(NULL));
  46.    
  47.     Car cr;
  48.    
  49.     FlyingCar fc;
  50.    
  51.     fc.Print(&cr);
  52.    
  53.    
  54.     return 0;
  55. }
  56.  
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement