ok gracias.
EDITO: Para no crear un post tonto...
Díganme si el uso que le he dado a un puntero que apunta a una clase en la función bubble está bien hecho o no se debería de hacer así por favor.
Saludos
EDITO: Para no crear un post tonto...
Díganme si el uso que le he dado a un puntero que apunta a una clase en la función bubble está bien hecho o no se debería de hacer así por favor.
Código (cpp) [Seleccionar]
#include <iostream>
using namespace std;
class base {
private:
bool rellena;//0 no tiene contenido . 1 tiene contenido
char *nombre;
char *tlf;
public:
base();
void del();
void dnuevo();
void editar();
void view(int n);
void freeram();
};
base::base(){
rellena = false;
nombre = new char[20];
tlf = new char[20];
};
void base::del(){
};
void base::dnuevo(){
cout << "\nIntroduce un nombre: " ;
cin >> nombre;
cout << "\nIntroduce un telefono: ";
cin >> tlf;
rellena=true;
};
void base::freeram(){
delete[] nombre;
delete[] tlf;
};
void base::editar(){
dnuevo();
};
void base::view(int n){
cout << "---------------------------------------------------------" << endl;
cout << "Nombre: ";
if(rellena==true)cout << nombre;
cout << endl;
cout << "Tlfn: ";
if(rellena==true)cout << tlf ;
cout << endl;
cout << "---------------------------------------------------------" << endl;
cout << "1-Nuevo\t2-Eliminar 3-Salir 4-Editar 8-Pagback 9-Pagnext\t Pag: " << n << endl;
};
void bubble(int n1,int n2,base b[]){
base *p;
for(int i=n1;i<n2;i++){
p=&b[i+1];
b[i]=*p;
}
};
int main(int argc,char *argv[]){
base b[10];
int pag=1;
int evento=0;
int pagmax=0;
while(1){
b[pag].view(pag);
cout << "Opcion: ";
cin >> evento;
if(evento==1){
pagmax=pagmax+1;
pag=pagmax;
b[pag].dnuevo();
}
else if(evento==2){
if(pag!=1){
bubble(pag,pagmax,b);
pagmax--;
}
}
else if(evento==3)break;
else if(evento==4)b[pag].editar();
else if(evento==8 && pag>1)pag--;
else if(evento==9 && pag < pagmax)pag++;
evento=0;
cout << "\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n" ;
}
for(int i=0;i<10;i++)b[i].freeram();
cout << "El programa se cerrara" << endl;
cin.get();
return 0;
}
Saludos