|
| vector () |
| Instancia un vector vacío.
|
|
| vector (const vector &c) |
| Instancia un vector copia de v.
|
|
| vector (const size_type &num) |
| Instancia un vector con capacidad inicial de num.
|
|
template<typename Itor > |
| vector (Itor beg, const Itor &end) |
|
| vector (const size_type &num, const T &value) |
| Instancia un nuevo vector de num elementos de valor value.
|
|
const size_type & | size () const |
| Retorna el número de elementos que tiene el vector.
|
|
bool | empty () const |
| Retorna true si el vector está vacío.
|
|
size_type | max_size () const |
| Retorna la máxima dimensión que puede tener el vector.
|
|
size_type | capacity () const |
| Retorna la capacidad (dimension actual) del vector.
|
|
void | reserve (const size_type &num) |
| Aumenta la capacidad del vector en num entradas.
|
|
void | resize (const size_type &num) |
| Reajusta la capacidad del vector a num entradas.
|
|
void | resize (const size_type &num, const T &value) |
|
vector & | operator= (const vector &c) |
| Asigna un vector.
|
|
void | assign (const size_type &num, const T &value) |
| Asigna al vector num entradas con valor value.
|
|
template<typename Itor > |
void | assign (Itor beg, const Itor &end) |
|
void | swap (vector &c) |
|
reference | at (const size_type &idx) |
| Retorna una referencia al elemento idx del vector.
|
|
const_reference | at (const size_type &idx) const |
|
reference | operator[] (const size_type &idx) |
| Accede a la entrada idx.
|
|
const_reference | operator[] (const size_type &idx) const |
| Accede a la entrada idx de un vector constante.
|
|
reference | front () const |
|
reference | back () const |
|
iterator | begin () const |
|
iterator | end () const |
|
iterator | insert (const iterator &pos, const T &value) |
| Inserta value en la posición dada por el iterador pos.
|
|
void | insert (iterator pos, const size_type &len, const T &value) |
|
template<class Itor > |
void | insert (const iterator &pos, Itor beg, const Itor &end) |
|
void | push_back (const T &value) |
| Inserta value al final del vector.
|
|
iterator | erase (const iterator &pos) |
| Borra el elemento de la posición pos.
|
|
iterator | erase (const iterator &beg, const iterator &end) |
|
void | pop_back () |
| Elimina el elemento situado al final del vector.
|
|
void | clear () |
| Elimina todos los elementos del vector.
|
|
bool | operator== (const vector &r) const |
|
bool | operator!= (const vector &r) const |
| Retorna true si this es distinto que el vector r.
|
|
bool | operator< (const vector &r) const |
|
bool | operator> (const vector &r) const |
|
bool | operator<= (const vector &r) const |
|
bool | operator>= (const vector &r) const |
|
template<class T>
class Aleph::vector< T >
Implantación Aleph del contenedor estándar C++ vector<T>.
Esta implantación, basada en el tipo DynArray, tiene como ventaja sobre otras implantaciones de vector<T> su alta capacidad de relocalización, la cual se comprende bajo dos bondades al momento de que se requiera mayor capacidad:
- Ninguna de las entradas por debajo de la capacidad actual es relocalizada. Esto redunda en la posibilidad de mantener con seguridad punteros a entradas dentro del vector.
- La cantidad de memoria que se aparta cuando el vector crece es proporcional a la diferencia entre las nueva y antigua dimensiones.
Las operaciones sobre un vector no efectúan verificación de rango.
Siendo derivado de DynArray, esta implantación es más lenta en acceso que otra implantación basada estrictamente en vectores contiguos de memoria.