#ifndef __RegTelefonico__ #define __RegTelefonico__ #include "Registro.hpp" #include #include using namespace std; /// Clase para manipular registros telefonicos /** * Clase para manipular registros telefonicos * @author Antonio Carrillo Ledesma * @date Verano 2011 * @version 0.0.1 * @bug No errors detected * @todo ... */ class RegTelefonico : public Registro { private: string Nombre; string Direccion; string Telefonos; public: /** * Constructor de la clase. * */ RegTelefonico(void) { } /// Visualiza el contenido del registro int visualizaRegistro(void) { printf("\n\nNombre: %s", Nombre.c_str()); printf("\nDireccion: %s", Direccion.c_str()); printf("\nTelefonos: %s", Telefonos.c_str()); return 0; //Ok } /// Adiciona un registro int adicionaRegistro(void) { // Cadena temporal char cad[81]; printf("\nNombre: "); ut.leerCadena(cad, 80); Nombre.assign(cad); printf("\nDireccion: "); ut.leerCadena(cad, 80); Direccion.assign(cad); printf("\nTelefonos: "); ut.leerCadena(cad, 80); Telefonos.assign(cad); return 0; // Ok } /// Modifica el contenido del registro int modificarRegistro(void) { // Cadena temporal char cad[81]; // Visualiza el nombre y permite su modificacion printf("\nNombre: %s", Nombre.c_str()); printf("\nNuevo Nombre: "); ut.leerCadena(cad, 80); Nombre.assign(cad); printf("\nDireccion: %s", Direccion.c_str()); printf("\nNueva Direccion: "); ut.leerCadena(cad, 80); Direccion.assign(cad); printf("\nTelefonos: %s", Telefonos.c_str()); printf("\nNuevos Telefonos: "); ut.leerCadena(cad, 80); Telefonos.assign(cad); return 0; // Ok } /// Leer un registro int leerRegistro(FILE *file) { char cad[100]; cad[0] = 0; fread(cad,1,80,file); Nombre.assign(cad); fread(cad,1,80,file); Direccion.assign(cad); fread(cad,1,80,file); Telefonos.assign(cad); return 0; // Ok } /// Graba un registro int grabarRegistro(FILE *file) { fwrite(Nombre.c_str(),1,80,file); fwrite(Direccion.c_str(),1,80,file); fwrite(Telefonos.c_str(),1,80,file); return 0; // Ok } }; #endif