#include class myOldClass { public: int i1; void func1(int i) { cout << "Invoking myOldClass.func1(int)" << endl; i1 = i1 + i; } }; class myNewClass : public myOldClass { public: int i2; void func2(int i) { cout << "Invoking myNewClass.func2(int)" << endl; i2 = i2 - i; } }; int main(int argc, char *argv[]) { myOldClass A; myNewClass B; B.i1 = B.i2 = 0; B.func1(1); cout << B.i1 << "\t" << B.i2 << "\n"; B.func2(9); cout << B.i1 << "\t" << B.i2 << "\n"; }