7. Colecciones en C++: Arreglos y std::vector
En C++ existen dos formas fundamentales de almacenar colecciones de datos contiguos: los arreglos estáticos tradicionales (C-style arrays) con tamaño fijo en tiempo de compilación, y los vectores dinámicos (std::vector) de la librería estándar (STL), capaces de auto-dimensionarse en tiempo de ejecución.
Arreglos Fijos (1D)
Inventario de Minecraft de 9 casillas. Capacidad máxima vs. cantidad ocupada, paso por referencia y desplazamientos.
std::vector STL
La solución moderna en C++. Tamaño dinámico, métodos push_back(), erase() y funciones modulares.
Matrices 2D (Pac-Man)
Laberinto interactivo de Pac-Man. Filas, columnas, bucles anidados, colisiones y visor de memoria 2D en tiempo real.
¿Por qué aprender en este orden?
Una progresión lógica paso a paso para dominar la gestión de datos en C++:
[0..8] y por qué necesitas la variable cantidadInventario.vector porque resuelve de raíz y de forma automática toda la complejidad anterior.⚡ Comparativa Directa
| Característica | Arreglo Tradicional (T[]) | std::vector<T> |
|---|---|---|
| Librería | Nativa (sin includes especiales). | #include <vector> |
| Tamaño | Estático / Fijo. | Dinámico y auto-escalable. |
| Conteo de elementos | Manual con variable (ej. cantidadInventario). | Método .size() integrado. |
| Agregar al final | inv[cantidad++] = x; (con tope). | inv.push_back(x); |
| Eliminar | Bucle de desplazamiento manual. | inv.erase(inv.begin() + i); |


