|
| ArrayStack (size_t dim=8) |
|
| ArrayStack (const ArrayStack &s) |
|
| ArrayStack (ArrayStack &&s) |
|
ArrayStack & | operator= (const ArrayStack &s) |
|
void | swap (ArrayStack &s) |
|
ArrayStack & | operator= (ArrayStack &&s) |
|
T & | push (const T &data) throw (std::exception, std::overflow_error) |
|
T & | push (T &&data) throw (std::exception, std::overflow_error) |
|
T & | pushn (const size_t &n=1) throw (std::exception, std::overflow_error) |
|
T | pop () throw (std::exception, std::underflow_error) |
|
T | popn (const int &n) throw (std::exception, std::underflow_error) |
|
T & | top () throw (std::exception,std::underflow_error) |
| retorna una referencia al elemento situado en el tope de la pila.
|
|
T & | base () |
|
const T & | top () const throw (std::exception,std::underflow_error) |
|
T & | top (const int &i) throw (std::exception, std::underflow_error) |
|
const T & | top (const int &i) const throw (std::exception, std::underflow_error) |
|
void | empty () |
| Vacía todos los elementos de la pila.
|
|
bool | is_empty () const |
| Retorna true si la pila está vacía.
|
|
const size_t & | size () const |
| Retorna el número de elementos que contiene la pila.
|
|
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) |
|
template<typename T>
class Aleph::ArrayStack< T >
Pila implantada con arreglos estáticos y verificación de número de elementos.
ArrayStack<T> instrumenta una pila de elementos de tipo T con una capacidad máxima de dim elementos. Para este tipo, todas las operaciones efectúan verificación acerca del número de elementos y excepciones son disparadas si la pila se excede o se intenta consultar o eliminar de una pila vacía.
Una pila instrumentada mediante un arreglo es mucho más rápida que una instrumentada con listas enlazadas.
El arreglo interno es estático, lo que ahorra llamadas al manejador de memoria, pero que hace su uso delicado a medida que la cantidad de elementos es mayor. Por lo general debe ser utilizada para pilas pequeñas.
- Parámetros
-
T | tipo de elemento que alberga la pila. equivalente a la dimensión del arreglo. |
dim | la dimensión de arreglo interno. |
- Ver también
- FixedStack DynListStack
- Nota
- Si se tiene la certitud de la correctitud, entonces úsese el tipo FixedStack, que es más rápido.