|
/* Diseñar una clase tiempo que represente la
hora y permita manejarla en formato clásico (hh:mm:ss). Se deben incluir en la
clase dos funciones operador que sobrecarguen el operador ++ para incrementar en
un segundo la hora leída por teclado. En una función ++ actuará de prefijo y
en otra de postfijo. */
#include <iostream.h>
class tiempo{
int hor,min,seg;
public:
tiempo(){hor=0;min=0;seg=0;}
void leer_tiempo();
void mostrar_tiempo();
void operator++(int);
void
operator++(void);
};
void tiempo::leer_tiempo()
{
cout<<endl<<"Dame le hora:";
cin>>hor;
cout<<"Minutos: ";
cin>>min;
cout<<"Segundos: ";
cin>>seg;
}
void tiempo::mostrar_tiempo()
{
cout<<endl<<endl<<hor<<":"<<min<<":"<<seg;
}
void tiempo::operator++(int i) // para que el compilador sepa que es la
{
// versión postfija se pone este inútil int i
seg++;
if(seg>59)
{
seg=0;
min++;
}
if(min>59)
{
min=0;
hor++;
}
}
void tiempo::operator++(void)
{
seg++;
if(seg>59)
{
seg=0;
min++;
}
if(min>59)
{
min=0;
hor++;
}
}
void main()
{
tiempo t;
t.leer_tiempo();
t.mostrar_tiempo();
t++;
//postfijo t.operatot++(int)
t.mostrar_tiempo();
++t;
//sufijo t.operator++(void)
t.mostrar_tiempo();
}
d
VOLVER
|