#include <iostream>
using namespace std;
 
class scope{
  public:
  virtual void draw() = 0;
};
class circle:public scope{
  public:
  void draw(){cout<<"draw circle.";}
};
class triangle:public scope{
  public:
  void draw(){cout<<"draw triangle.";}
};
class geoobj{
  public:
  geoobj(scope* _obj){_obj->draw();}
};
 
int main(){
  geoobj test(new circle());
  geoobj test2(new triangle());
  return 0;
}