2 # ifndef TPL_DYNSLIST_H
3 # define TPL_DYNSLIST_H
5 # include <tpl_slist.H>
33 throw std::out_of_range (
"position out of range");
35 if (pos < current_pos)
40 while (current_pos < pos)
42 current_node = current_node->get_next();
51 DynSlist() : num_items(0), current_pos(0), current_node(this)
72 throw(std::exception, std::out_of_range)
79 size_t size()
const {
return num_items; }
92 void insert(
const int & pos,
const T & data)
94 throw(std::exception, std::bad_alloc, std::out_of_range)
107 void remove(
const int & pos)
109 throw(std::exception, std::range_error)
114 delete node_to_delete;
147 # endif // TPL_DYNSLIST_H
Iterator(DynSlist &list)
Constructor.
Definition: tpl_dynSlist.H:137
Snode * remove_next()
Definition: tpl_snode.H:48
void insert_next(Slink *p)
Definition: slink.H:59
bool is_empty() const
Retorna true si this está vacío (apunta a sí mismo)
Definition: slink.H:38
Definition: tpl_snode.H:22
void insert(const int &pos, const T &data)
Definition: tpl_dynSlist.H:92
Definition: tpl_dynSlist.H:21
Definition: tpl_dynSlist.H:128
DynSlist()
Constructor.
Definition: tpl_dynSlist.H:51
Definition: tpl_slist.H:20
Snode *& get_next()
Retorna el nodo siguiente a this.
Definition: tpl_snode.H:51
~DynSlist()
Destructor.
Definition: tpl_dynSlist.H:118
size_t size() const
Retorna la cantidad de elementos que tiene la lista.
Definition: tpl_dynSlist.H:79
Node * get_current()
Definition: tpl_slist.H:112
T & get_data()
Retorna una referencia al dato contenido en el nodo.
Definition: tpl_snode.H:31
T Item_Type
El tipo de elemento que retorna get_current().
Definition: tpl_dynSlist.H:134
T & operator[](const size_t &i)
Definition: tpl_dynSlist.H:70
Node * remove_first()
Definition: tpl_slist.H:50
Slist< T > Set_Type
El tipo de conjunto sobre el cual se itera.
Definition: tpl_dynSlist.H:132
T & get_current()
retorna una referencia al elemento actual.
Definition: tpl_dynSlist.H:140