1 # ifndef TPL_DYN_SLIST_NC_H
2 # define TPL_DYN_SLIST_NC_H
4 # include <tpl_snode_nc.H>
55 T &
insert(
const T & data)
throw(std::exception, std::bad_alloc)
76 T &
append(
const T & data)
throw(std::exception, std::bad_alloc)
91 throw std::underflow_error(
"List is empty");
100 throw std::underflow_error(
"List is empty");
114 throw std::underflow_error(
"List is empty");
119 if (--num_items == 0)
145 const size_t & size()
const {
return num_items; }
164 T & get_curr() {
return Dyn_Slist_Nc::Iterator::get_current(); }
177 for (
Iterator it(const_cast <Dyn_Slist_Nc &>(l));
178 it.has_current(); it.next())
204 for (
Iterator it(const_cast<Dyn_Slist_Nc &>(list));
205 it.has_current(); it.next())
211 T & operator [] (
const size_t & n)
214 for (
int i = 0; i < n and it.has_current(); ++i, it.next());
216 return it.get_curr();
Definition: tpl_dyn_slist_nc.H:24
Snode_Nc * get_current()
retorna puntero al nodo actual
Definition: tpl_snode_nc.H:65
Definition: tpl_dyn_slist_nc.H:147
T pop()
Si this es una pila, entonces elimina el tope.
Definition: tpl_dyn_slist_nc.H:140
void empty()
VacÃa totalmente a la lista.
Definition: tpl_dyn_slist_nc.H:36
Dyn_Slist_Nc(const Dyn_Slist_Nc &l)
Constructor de copia.
Definition: tpl_dyn_slist_nc.H:175
Dyn_Slist_Nc()
Constructor vacÃo.
Definition: tpl_dyn_slist_nc.H:169
T & put(const T &item)
Si this es una cola, entonces mete el elemento item.
Definition: tpl_dyn_slist_nc.H:125
bool is_empty() const
Retorna true si this está vacÃo (apunta a NULL)
Definition: slink_nc.H:50
T & get_last()
Retorna una referencia al último elemento de la lista.
Definition: tpl_dyn_slist_nc.H:97
T & insert(const T &data)
Definition: tpl_dyn_slist_nc.H:55
T & top() const
Si this es una pila, entonces retorna el tope.
Definition: tpl_dyn_slist_nc.H:143
Definition: tpl_snode_nc.H:8
T remove_first()
Definition: tpl_dyn_slist_nc.H:111
T & push(const T &item)
Si this es una pila, entonces inserta item.
Definition: tpl_dyn_slist_nc.H:137
T & get_data()
Retorna una referencia al dato contenido en el nodo.
Definition: tpl_snode_nc.H:22
T & rear()
Si this e suna cola, entonces retorna el elemento más joven.
Definition: tpl_dyn_slist_nc.H:131
Snode_Nc *& get_next()
Retorna el nodo siguiente a this.
Definition: tpl_snode_nc.H:37
void reset()
Reinicia enlace a que apunte a NULL.
Definition: slink_nc.H:43
void insert(Slink_Nc *p)
Definition: slink_nc.H:70
Dyn_Slist_Nc & operator=(const Dyn_Slist_Nc &list)
Definition: tpl_dyn_slist_nc.H:195
Definition: tpl_snode_nc.H:42
T & get_first()
Retorna una referencia al primer elemento de la lista.
Definition: tpl_dyn_slist_nc.H:88
T & front()
Si this e suna cola, entonces retorna el elemento más antiguo.
Definition: tpl_dyn_slist_nc.H:134
T & append(const T &data)
Definition: tpl_dyn_slist_nc.H:76
Snode_Nc * remove_next()
Definition: tpl_snode_nc.H:31