//************************************************ //this function permit use object in expression //with different type //************************************************ #include using namespace std; //------------------------------------------------ class stack{ int stk[10]; int tos; public: stack(){tos=0;} void push(int i){ if(tos<10) { stk[tos]=i; tos++; } else cout<<"Stack full!\n"; } int pop(){ if(tos==0) { cout<<"Stack empty!\n"; return 0; } else { tos--; return stk[tos]; } } operator int(){return stk[tos-1];} }; int menu(stack &ob){ char choose; int val,val1; do{ cout<<"1)insert new value\n"; cout<<"2)take value\n"; cout<<"3)exit\n"; cin>>choose; cout<>val; ob.push(val); break; case '2': cout<