Código
¿Dónde está el fallo?
//Clase Agenda class Agenda{ private: Contacto *lista; int N; public: //Constructor por defecto Agenda(){ N=0; lista=NULL; return; } //Destructor ~Agenda(){ if(lista){ delete[]lista; } } //Metodo aniadir contacto void NuevoContacto(void){ //Creacion vector Contacto auxiliar Contacto *aux=new Contacto[N+1]; //Recoleccion de datos anteriores for(int i=0;i<N;i++){ aux[i]=lista[i]; } //Peticion de dato nuevo cin>>aux[N]; cin>>aux[N].fnac; cin>>aux[N].dir; //Eliminacion de vector Contacto obsoleto if(lista!=NULL){ delete[]lista; } //Recreacion de vector Contacto util lista=aux; N++; Ordenar(lista,N); return; } //......... //Metodo reordenacion de contactos void Ordenar(Contacto listado[], int n){ Contacto aux; bool centinela; for(int i=0;i<n&¢inela==true;i++){ centinela=false; for(int j=0;j<n;j++){ if(listado[j-1].VerNombre()>listado[j].VerNombre()){ aux=listado[j-1]; listado[j-1]=listado[j]; listado[j]=aux; centinela=true; } } } return; } };