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

Pila implantada con arreglos estáticos y verificación de número de elementos. Más...

Lista de todos los miembros.

Métodos públicos

 ArrayQueue (const size_t &tp=8)
 Constructor que especifica capacidad máxima.
const size_t & capacity () const
 Retorna la capacidad de la cola (máxima cantidad de elementos que puede contener.
T & front (const size_t &i=0) throw (std::exception, std::underflow_error)
 Accede al i-ésimo elemento desde el frente de la cola.
get () throw (std::exception, std::underflow_error)
 Elimina el elemento del frente de la cola y retorna una copia.
T & getn (const size_t &n) throw (std::exception, std::underflow_error)
 Elimina n elementos de la cola y retorna el elemento situado en el frente.
bool is_empty () const
 Retorna true si la cola está vacía.
T & put (const T &item) throw (std::exception,std::overflow_error)
 Inserta un elemento en la cola.
T & putn (const size_t &n) throw (std::exception, std::overflow_error)
 Aparta n espacios de inserción en la cola.
T & rear (const size_t &i=0) throw (std::exception, std::underflow_error)
 Accede al i-ésimo elemento desde el trasero de la cola.
const size_t & size () const
 Retorna el número de elementos que contiene la cola.
 ~ArrayQueue ()
 Destructor.


Descripción detallada

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

ArrayQueue<T> instrumenta una cola de elementos de tipo T con una capacidad máxima de dim elementos especificada en tiempo de construcción. Para este tipo, todas las operaciones efectúan verificación acerca del número de elementos y excepciones son disparadas si la cola se excede, o se intenta consultar o eliminar de una cola vacía.

Una cola instrumentada mediante un arreglo es mucho más rápida que una instrumentada con listas enlazadas.

El arreglo interno se aparta en memoria.

Parámetros:
T tipo de elemento que alberga la cola. equivalente a la dimensión del arreglo.
dim la dimensión de arreglo interno.
Ver también:
FixedQueue DynListQueue
Nota:
Si se tiene la certitud de la correctitud, entonces úsese el tipo FixedQueue, que es más rápido.

Definición en la línea 79 del archivo tpl_arrayQueue.H.


Documentación del constructor y destructor

ArrayQueue ( const size_t &  tp = 8  )  [inline]

Construye una cola con capacidad máxima de $ 2^{tp}$ elementos.

Parámetros:
[in] tp potencia de dos de la capacidad deseada; la capacidad será de $ 2^{tp}$ elementos.
Excepciones:
bad_alloc si no hay suficiente memoria.

Definición en la línea 122 del archivo tpl_arrayQueue.H.


Documentación de las funciones miembro

T& front ( const size_t &  i = 0  )  throw (std::exception, std::underflow_error) [inline]

front(i) accede a la i-ésima posición desde el frente de la cola. Esto es equivalente a conocer el i-ésimo elemento más antiguo.

Parámetros:
[in] i posición de acceso.
Devuelve:
una referencia modificable al i-ésimo elemento desde el frente de la cola.
Excepciones:
underflow_error si la cola está vacía.

Definición en la línea 233 del archivo tpl_arrayQueue.H.

T get (  )  throw (std::exception, std::underflow_error) [inline]

get() sobre la cola elimina el elemento del frente y retorna una copia del elemento recién eliminado.

Devuelve:
una copia del elemento recién eliminado.
Excepciones:
underflow_error si la cola está vacía.

Definición en la línea 191 del archivo tpl_arrayQueue.H.

Referenciado por Aleph::levelOrder().

T& getn ( const size_t &  n  )  throw (std::exception, std::underflow_error) [inline]

getn(n) saca n elementos de la cola en tiempo constante.

Parámetros:
[in] n número de elementos a sacar.
Devuelve:
una referencia modificable al elemento situado en el frente.
Excepciones:
underflow_error si la cola está vacía.

Definición en la línea 213 del archivo tpl_arrayQueue.H.

T& put ( const T &  item  )  throw (std::exception,std::overflow_error) [inline]

put(item) inserta una copia de item en la cola.

Parámetros:
[in] item el elemento a insertar.
Devuelve:
una referencia modificable al elemento recién insertado.
Excepciones:
overflow_error si la cola está llena.

Definición en la línea 144 del archivo tpl_arrayQueue.H.

Referenciado por Aleph::levelOrder().

T& putn ( const size_t &  n  )  throw (std::exception, std::overflow_error) [inline]

putn(n) aparta n espacios de inserción en la cola. Esto es equivalente a que se hubiesen realizado n inserciones consecutivas, con la bondad de que la operación toma tiempo constante.

Los valores de los espacios insertados son indeterminados. Pueden accederse mediante las operaciones front() y rear().

Parámetros:
[in] n cantidad de espacios insertar.
Devuelve:
referencia modificable al último espacio en el trasero de la cola.
Excepciones:
overflow_error si la cantidad total de elementos luego de insertar los n espacios excede la capacidad.

Definición en la línea 172 del archivo tpl_arrayQueue.H.

T& rear ( const size_t &  i = 0  )  throw (std::exception, std::underflow_error) [inline]

rear(i) accede a la i-ésima posición desde el trasero de la cola. Esto es equivalente a conocer el i-ésimo elemento más joven.

Parámetros:
[in] i posición de acceso.
Devuelve:
una referencia modificable al i-ésimo elemento desde el trasero de la cola.
Excepciones:
underflow_error si la cola está vacía.

Definición en la línea 249 del archivo tpl_arrayQueue.H.


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

Leandro R. León