Referencia de la plantilla de la Clase DynSlist
[Secuencias.]

Lista dinámica de elementos de tipo T instrumentada mediante una lista simplemente enlazada. Más...

Diagrama de herencias de DynSlist

Inheritance graph
[leyenda]
Diagrama de colaboración para DynSlist:

Collaboration graph
[leyenda]

Lista de todos los miembros.

Métodos públicos

 DynSlist ()
 Constructor.
T & get_data ()
 Retorna una referencia al dato contenido en el nodo.
Nodeget_first () const throw (std::exception,std::underflow_error )
 Retorna el primer nodo de la lista.
Snodeget_next () const
 Retorna el nodo siguiente a this.
void insert (const int &pos, const T &data) throw (std::exception, std::bad_alloc, std::out_of_range)
 Inserta un elemento en la posición pos dentro de una lista dinámica.
void insert_first (Node *node)
 Inserta un nodo después de this.
void insert_next (Slink *p)
 Inserta en enlace p después de this.
bool is_empty () const
 Retorna true si this está vacío (apunta a sí mismo).
T & operator[] (const size_t &i) throw (std::exception, std::out_of_range)
 Acceso al i-ésimo elemento de la lista.
void remove (const int &pos) throw (std::exception, std::range_error)
 Elimina de la lista el elemento es la posición pos.
Noderemove_first () throw (std::exception, std::underflow_error)
 Elimina el primer nodo de la lista y retorna su dirección.
Snoderemove_next ()
 Elimina el nodo siguiente a this.
void reset ()
 Reinicia enlace a que apunte a sí mismo.
size_t size () const
 Retorna la cantidad de elementos que tiene la lista.
 ~DynSlist ()
 Destructor.

Clases

struct  Iterator
 Iterador sobre listas dinámicas implementadas con listas simplemente enlazadas. Más...


Descripción detallada

template<typename T>
class Aleph::DynSlist< T >

Parámetros:
T el tipo de dato de los elementos de la lista.
Ver también:
Slist Snode Slink

Definición en la línea 63 del archivo tpl_dynSlist.H.


Documentación de las funciones miembro

void insert ( const int &  pos,
const T &  data 
) throw (std::exception, std::bad_alloc, std::out_of_range) [inline]

insert(pos, data) inserta en la posición pos de la lista this el elemento cuyo valor es data.

Parámetros:
[in] pos posición de inserción.
[in] data valor del elemento a insertar.
Excepciones:
bad_alloc si no hay suficiente memoria.
out_of_range si pos está fuera de rango.

Definición en la línea 137 del archivo tpl_dynSlist.H.

Hace referencia a Slink::insert_next().

void insert_first ( Node node  )  [inline, inherited]

insert_first(node) inserta el nodo justamente después del nodo this.

Parámetros:
[in] node el nodo a insertar.

Definición en la línea 78 del archivo tpl_slist.H.

Hace referencia a Slink::insert_next(), y Slink::is_empty().

void insert_next ( Slink p  )  [inline, inherited]

insert_next(p) inserta un nodo simple cuyo enlace es p después del nodo cuyo enlace es this.

Parámetros:
[in] p el enlace simple a insertar.

Definición en la línea 130 del archivo slink.H.

Hace referencia a Slink::is_empty(), y Slink::next.

Referenciado por DynSlist::insert(), Slist::insert_first(), ListStack::push(), y ListQueue::put().

T& operator[] ( const size_t &  i  )  throw (std::exception, std::out_of_range) [inline]

El operador [i] sobre una lista accede al elemento cuya posición es i.

El acceso a la posición i requiere recorrer secuencialmente los i - 1 elementos previos.

Parámetros:
[in] i posición del elemento que se desea acceder.
Excepciones:
out_of_range_error si i es mayor que la cantidad de elementos de la lista.
Devuelve:
una referencia constante al elemento i dentro de la lista.
Nota:
En términos de desempeño, este operador no es el mismo que el acceso sobre un arreglo.

Definición en la línea 114 del archivo tpl_dynSlist.H.

Hace referencia a Snode::get_data(), y Snode::get_next().

void remove ( const int &  pos  )  throw (std::exception, std::range_error) [inline]

Parámetros:
[in] pos posición del elemento a eliminar.
Excepciones:
out_of_range si pos está fuera de rango.

Definición en la línea 157 del archivo tpl_dynSlist.H.

Hace referencia a Snode::remove_next().

Node* remove_first (  )  throw (std::exception, std::underflow_error) [inline, inherited]

Elimina el primer nodo de la lista.

Excepciones:
underflow_error si la lista está vacía.
Devuelve:
un puntero al nodo eliminado.

Definición en la línea 93 del archivo tpl_slist.H.

Hace referencia a Slink::is_empty(), y Snode::remove_next().

Referenciado por DynSlist::~DynSlist().

Snode* remove_next (  )  [inline, inherited]

remove_next() elimina el nodo enlazado después de this y retorna su dirección de memoria.

Devuelve:
el nodo eliminado.

Reimplementado de Slink.

Definición en la línea 87 del archivo tpl_snode.H.

Hace referencia a Slink::remove_next().

Referenciado por ListQueue::get(), ListStack::pop(), DynSlist::remove(), y Slist::remove_first().


La documentación para esta clase fue generada a partir del siguiente fichero:

Leandro R. León