#ifndef BASE_H #define BASE_H #include using namespace std; class base { int i1; public: base(int initial_i1): i1 {initial_i1} {} virtual ~base() {} virtual ostream& print(ostream& ost) const {return ost << i1;} friend ostream& operator<<(ostream& ost, const base& b) { return b.print(ost); } }; #endif