pabloliva87

UglyError1

Jan 22nd, 2014
58
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 0.56 KB | None | 0 0
  1. #include <iostream>
  2.  
  3. struct Base
  4. {
  5.     Base()
  6.     {}
  7.     virtual void show()
  8.     {};
  9.     ~Base()
  10.     {}
  11. };
  12.  
  13. class Derived : public Base
  14. {
  15.     int a;
  16.     Base* hidden;
  17. public:
  18.     Derived()
  19.     : a(10)
  20.     {
  21.         hidden = new Base;
  22.     }
  23.     virtual void show()
  24.     {
  25.         std::cout << a << std::endl;
  26.     }
  27.     ~Derived()
  28.     {
  29.         delete hidden;
  30.     }
  31. };
  32.  
  33. void g(Base* b)
  34. {
  35.     b->show();
  36. }
  37.  
  38. Base* f()
  39. {
  40.     Base* d = new Derived;  
  41.     return d;
  42. }
  43.  
  44. int main (void)
  45. {
  46.     Base* d = f();
  47.     g(d);
  48.     delete d;
  49. }
Add Comment
Please, Sign In to add comment