#include using namespace std; typedef struct uInt_n{ int n1,n2; uInt_n(int N_1,int N_2):n1(N_1),n2(N_2){ } void Cout_up(){ cout < class obj_pint{ public: virtual uInt_n Get_out() = 0; }; template class Pintione:obj_pint{ protected: n_lotMeaker_Mn nMMnor; private: template void Pintf_oRtf(Pintione mInt_n){ cout <<"MInder:: 1 ..: "; nMMnor.Cout_up(); cout <<"MInder:: 2 ..: "; mInt_n.Get_out().Cout_up(); cout <<"endl frommnnr;"<< endl; } public: Pintione():nMMnor(Xn,Ys){ } template Pintione(Pintione ptxy):nMMnor(tx,ty){ } template obj_pint * nKer_PintUp(Pintione mInt_n){ Pintf_oRtf(mInt_n); return new Pintione(); } uInt_n Get_out(){ return nMMnor; } }; int main(){ obj_pint *oPinter; Pintione<2,5> iPing_25; Pintione<1,4> iPint_14; oPinter = iPing_25. nKer_PintUp(iPint_14); oPinter->Get_out(); return 0; }