// IG17 2004-05 // Empleados.h (version para Tema 3b) // 10-12-2004 // Ejemplo del Tema 3b: funciones virtuales #ifndef _EMPLEADOS_H #define _EMPLEADOS_H #include class Empleado { string nombre; float sueldoBase; protected: float retenciones; public: Empleado (string = "", float = 0, float = 0); //nombre, sueldoBase, retenciones string Nombre() const; virtual void Ver() const; virtual float CalcularSueldo() const; void CambiarRetenciones(float); virtual Empleado * Clonar() const; virtual ~Empleado() {} }; class Comercial : public Empleado { float ventas, comision; public: Comercial(string = "", float = 0, float = 0, float = 5); //nombre, sueldoBase, retenciones, comision void SumarVentas(float); void Ver() const; float CalcularSueldo() const; virtual Empleado * Clonar() const; }; class Mecanico : public Empleado { float sueldoReparacion; int reparaciones; public: Mecanico(string = "", float = 0, float = 0, float = 5); //nombre, sueldoBase, retenciones, sueldoReparacion void SumarReparaciones(int); void Ver() const; float CalcularSueldo() const; virtual Empleado * Clonar() const; }; #endif