Hola:
Cita:
Iniciado por zaico77 Y eso de preocuparme cuando x apunta a algo que no esta en la lista ya esta, lo que pasa es que utilizo un método de búsqueda que retorna la posición del puntero o nodo si lo encuentra de ahí la posición la mando por ejemplo al método anterior y como ya se que si existe por que el método buscar ya me lo dijo pues continuo con las funciones, es decir que si la posición no existe o apunta a otra cosa nunca entrare al método anterior.
Vale, pero eso no es una buena práctica. Si en algún momento te olvidas de eso y llamas esa función con un puntero q no existe en la lista vas a tener un "Access violation" en
Prueba con:
Código C++:
Ver originalwhile(p->getSiguiente() != pos && p->getSiguiente() != NULL){
p=p->getSiguiente();
anterior=p;
}
return ( p->getSiguiente() != NULL ) ? anterior : 0;
Además es ineficiente. Cada vez q llamas la función anterior(...) tienes q recorrer la lista de nuevo.
Es mejor que en el método de búsqueda vayas llevando quien es el anterior o q uses otra estructura de datos:
lista doblemente enlazada
slds;
nup_