fork download
  1. #include <iostream>
  2.  
  3. class Car
  4. {
  5. public:
  6. virtual void Drive()
  7. {
  8. std::cout << "Car::Drive" << std::endl;
  9. }
  10. };
  11.  
  12. class Toyota : public Car
  13. {
  14. public:
  15. virtual void Drive()
  16. {
  17. std::cout << "Toyota::Drive" << std::endl;
  18. }
  19. };
  20.  
  21. class Prius : public Car
  22. {
  23. public:
  24. virtual void Drive()
  25. {
  26. std::cout << "Prius::Drive" << std::endl;
  27. }
  28. };
  29.  
  30.  
  31. void DoStuff(Car* c)
  32. {
  33. c->Drive();
  34. }
  35.  
  36. int main()
  37. {
  38. Car c;
  39. Toyota t;
  40. Prius p;
  41.  
  42. DoStuff(&c);
  43. DoStuff(&t);
  44. DoStuff(&p);
  45. }
Success #stdin #stdout 0s 2852KB
stdin
Standard input is empty
stdout
Car::Drive
Toyota::Drive
Prius::Drive