Contenidos
Los vectores C ++ son como matrices supercargadas: más fáciles de usar y menos propensas a causar problemas. Aprenda todo sobre los fundamentos de los vectores C ++.
Los vectores C ++ forman parte de la biblioteca de plantillas estándar (STL). STL es una de las muchas bibliotecas disponibles para C ++ que aumentan la eficiencia, la flexibilidad y el rendimiento de las aplicaciones. Los vectores son muy útiles y un concepto vital para cualquiera que quiera dominar C ++.
Los vectores C ++ son esencialmente contenedores que puede usar para almacenar datos. Hacen que trabajar con matrices sea limpio y rápido, por lo que saber cómo usar vectores C ++ es una habilidad valiosa si está buscando desarrollar una aplicación C ++. Siga leyendo mientras discutimos todo lo que necesita saber sobre los vectores C ++.
¿Qué son los vectores C ++?
Los vectores C ++ son contenedores de secuencia que son un componente esencial de la biblioteca de plantillas estándar. Las matrices representan matrices que pueden cambiar de tamaño dinámicamente durante el tiempo de ejecución si es necesario.
A diferencia de las matrices tradicionales, no es necesario administrar la asignación de memoria de un vector de forma explícita. El contenedor de vectores gestiona automáticamente su memoria. Puede pensar en los vectores C ++ como una matriz dinámica que se ajusta después de agregar o eliminar un elemento.
Además, un vector organiza sus elementos de forma contigua. Esto significa que puede acceder fácilmente a él mediante punteros o iteradores.
¿Cómo funciona std :: vector?
Ahora que está familiarizado con los vectores de C ++, debe comprender cómo funcionan antes de poder comenzar a usarlos en su código.
Cuando usa un vector C ++, insertará nuevos elementos al final en tiempo diferencial. Esto se debe a que, en algunos casos, el vector tendrá que expandirse para adaptarse al nuevo elemento. De manera similar, si extrajera el último elemento de un vector, tomaría un tiempo constante que el vector no necesite ajustar su longitud (tamaño).
Para usar vectores de manera efectiva, usamos iteradores y funciones incorporados. Los iteradores son punteros que se utilizan junto con los vectores de C ++. Simplifican el cruce del contenedor vectorial. Hay muchas funciones vectoriales diferentes y veremos algunas importantes en la siguiente sección.
Funciones vectoriales de C ++
Echemos un vistazo a algunas funciones de iterador y contenedor de STL que se usan comúnmente con vectores C ++:
- Comienzo() devuelve un puntero de iterador que apunta al primer elemento del vector.
- fin() devuelve un puntero de iterador a la posición final del contenedor de vectores.
- Comienzo() y cómo Comienzo(), pero le da un iterador inverso que apunta al último elemento del vector.
- dimensión() devuelve un recuento de los elementos almacenados en el vector.
- tamaño máximo () devuelve la capacidad máxima de elementos que el contenedor de vectores puede acomodar.
- cambiar el tamaño (x) cambiará el tamaño del contenedor de vectores para que pueda contener X elementos.
- vacío() devuelve verdadero si el contenedor de vectores no tiene elementos.
- rechazar() inserta un nuevo elemento en el vector al final.
- pop_back () extrae un elemento del final del contenedor de vectores.
- para insertar() le permite agregar un elemento al vector en una ubicación específica.
Ejemplo de vector de C ++
El uso de vectores en C ++ hace que la codificación con matrices sea flexible y rápida. Echemos un vistazo a algunos ejemplos de código que usan vectores C ++.
#include<vector>
#include<iostream>
using namespace std;void main()
{
vector<int> arr;
// push_back to add elements to end of our container
arr.push_back(10);
arr.push_back(5);
arr.push_back(20);
// vector now contains [10,5,20]
// use begin() iterator to traverse container until end() pointer
cout << "begin() and end() iterators: ";
for (auto j = arr.begin(); j != arr.end(); j++)
{
cout << *j << ' ';
}
// Expected output: 10 5 20
// rbegin() and rend() used to reverse traverse vector container
cout << "rbegin() and rend() iterators: ";
for (auto j = arr.rbegin(); j != arr.rend(); j++)
{
cout << *j << ' ';
}
// Expected output: 20 5 10
cout << "The size of array is: " << arr.size() << endl;
// Expected output: The size of array is: 3
// Resize array to have only 2 elements
arr.resize(2);
cout << "The size of array is: " << arr.size() << endl;
// Expected output: The size of array is: 2
cout << "MaxSize(): " << arr.max_size() << endl;
cout << "Vector Empty? " << arr.empty() << endl;
// pop_back last element
arr.pop_back();
// insert 5 at beginning of array
arr.insert(arr.begin(), 5);
}
Usando vectores en C ++
Los vectores de C ++ son flexibles y potentes, por lo que son una característica esencial para todos los desarrolladores de C ++. STL es una biblioteca de C ++ importante y explorarla en detalle puede ayudarlo a crear mejores aplicaciones.
Leer siguiente
Sobre el Autor