Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <iostream>
- struct Base
- {
- Base()
- {}
- virtual void show()
- {};
- ~Base()
- {}
- };
- class Derived : public Base
- {
- int a;
- Base* hidden;
- public:
- Derived()
- : a(10)
- {
- hidden = new Base;
- }
- virtual void show()
- {
- std::cout << a << std::endl;
- }
- ~Derived()
- {
- delete hidden;
- }
- };
- void g(Base* b)
- {
- b->show();
- }
- Base* f()
- {
- Base* d = new Derived;
- return d;
- }
- int main (void)
- {
- Base* d = f();
- g(d);
- delete d;
- }
Add Comment
Please, Sign In to add comment