#include <iostream> 
using namespace std;
class Musician { 
   public:
      void greet() {cout <<"Musician says : Hello\n";}
      virtual void play() {cout <<"Musician plays : Mmm mmm\n";}
};
class Trumpeter : public Musician {
   public:
       void greet() {
                cout <<"Trumpeter says : What's up\n";
       } 
       void play() {
            cout <<"Trumpeter plays : Toot toot\n";
       } 
 };
class Flutist : public Musician { 
   public:
       void greet() {cout <<"Flutist says: how do you do\n";}
        void play() {cout <<"Flutist plays: tweet tweet \n";}
};
int main(int argc, char* argv[]){ Musician m, *pm;
Trumpeter t;
Flutist f;
    m.greet(); m.play();
    t.greet(); t.play();
    f.greet(); f.play();
    pm = &t; pm->greet(); pm->play();
    pm = &f; pm->greet(); pm->play();
}