From: Leandro Lucarella Date: Fri, 19 Sep 2003 03:43:41 +0000 (+0000) Subject: Correcciones. X-Git-Tag: svn_import~21 X-Git-Url: https://git.llucax.com/z.facultad/75.42/euler-oo.git/commitdiff_plain/382e1e54016fc7c1fd26fe1ae186b1e3a0e15f39?ds=inline Correcciones. --- diff --git a/dllist.cpp b/dllist.cpp index a2994fd..e34e787 100644 --- a/dllist.cpp +++ b/dllist.cpp @@ -14,8 +14,6 @@ * $Id$ */ -// TODO metodos que devuelven NULL si la lista esta vacia. -// poner comentarios en línea simple? #include "dllist.h" DLList::DLList(void): first(NULL), current(NULL), last(NULL) {} @@ -126,6 +124,10 @@ bool DLList::push(void* data) { } void* DLList::shift(void) { + // Si está vacía devuelve NULL. + if (this->first == NULL) { + return NULL; + } /* Primer nodo */ DLListNode* node = this->first; /* Datos del primer nodo. */ @@ -147,6 +149,10 @@ void* DLList::shift(void) { } void* DLList::pop(void) { + // Si está vacía devuelve NULL. + if (this->first == NULL) { + return NULL; + } /* Último nodo */ DLListNode* node = this->last; /* Datos del último nodo. */ @@ -168,6 +174,10 @@ void* DLList::pop(void) { } void* DLList::remove_current(void) { + // Si no hay un nodo seleccionado devuelve NULL. + if (this->current == NULL) { + return NULL; + } /* Nodo actual */ DLListNode* current = this->current; /* Datos del nodo actual. */