#include <tpl_arrayQueue.H>
Métodos públicos | |
void | swap (FixedQueue &q) |
FixedQueue (const size_t &tp=8) | |
~FixedQueue () | |
Destructor. | |
FixedQueue (const FixedQueue &q) | |
FixedQueue (FixedQueue &&q) | |
FixedQueue & | operator= (const FixedQueue &q) |
FixedQueue & | operator= (FixedQueue &&q) |
T & | put (const T &item) throw (std::exception, std::overflow_error) |
T & | put (T &&item) throw (std::exception, std::overflow_error) |
T & | putn (const size_t n) throw (std::exception, std::overflow_error) |
T | get () throw (std::exception, std::underflow_error) |
T & | getn (const size_t n) throw (std::exception, std::underflow_error) |
T & | front (const size_t i=0) throw (std::exception, std::range_error) |
const T & | front (const size_t i=0) const throw (std::exception, std::range_error) |
T & | rear (const size_t i=0) throw (std::exception, std::range_error) |
const T & | rear (const size_t i=0) const throw (std::exception, std::range_error) |
const size_t & | size () const |
Retorna el número de elementos que contiene la cola. | |
bool | is_empty () const |
Retorna true si la cola está vacía. | |
const size_t & | capacity () const |
template<class Operation > | |
bool | traverse (Operation &operation) |
template<class Operation > | |
bool | traverse (Operation &operation) const |
template<class Operation > | |
bool | traverse (Operation &&operation=Operation()) const |
template<class Operation > | |
bool | traverse (Operation &&operation=Operation()) |
Functional_Methods (T) | |
Generic_Items (T) | |
Cola implantada con arreglos estáticos y sin verificación de número de elementos.
FixedQueue<T> instrumenta una cola de elementos de tipo T con una capacidad máxima de dim elementos. Para este tipo, ninguna operación efectúa verificación acerca del número de elementos. Por esa razón FixedQueue es más rápido que ArrayQueue.
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.
T | tipo de elemento que alberga la cola. equivalente a la dimensión del arreglo. |
|
inline |
Constructor que especifica capacidad máxima.
Construye una cola con capacidad máxima de elementos.
[in] | tp | potencia de dos de la capacidad deseada; la capacidad será de ![]() |
|
inline |
Retorna la capacidad de la cola (máxima cantidad de elementos que puede contener.
|
inline |
Accede al i-ésimo elemento desde el frente de la cola.
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.
[in] | i | posición de acceso. |
range_error | si i está fuera de rango. |
|
inline |
Elimina el elemento del frente de la cola y retorna una copia.
get() sobre la cola elimina el elemento del frente y retorna una copia del elemento recién eliminado.
|
inline |
Elimina n elementos de la cola y retorna el elemento situado en el frente.
getn(n) saca n elementos de la cola en tiempo constante.
[in] | n | número de elementos a sacar. |
|
inline |
Inserta un elemento en la cola.
put(item) inserta una copia de item en la cola.
[in] | item | el elemento a insertar. |
|
inline |
Aparta n espacios de inserción en la cola.
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().
[in] | n | cantidad de espacios insertar. |
|
inline |
Accede al i-ésimo elemento desde el trasero de la cola.
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.
[in] | i | posición de acceso. |