Redimensionar Vector 2D C++
En C++, podemos crear un vector 2D usando dos vectores unidimensionales. El primer vector unidimensional especifica un punto en un plano bidimensional, mientras que el segundo vector unidimensional especifica un ángulo o rotación desde este punto.
En este breve artículo, nos centraremos en cómo cambiar el tamaño del vector 2d en C++.
Cambiar el tamaño del vector 2D en C++
Para cambiar el tamaño del vector 2d en C++, necesitamos usar una función llamada resize()
, que es parte de la biblioteca STL.
Sintaxis:
vector::resize()
El método resize()
toma dos parámetros, ambos enteros. El primer entero especifica la nueva longitud del vector y el segundo entero especifica su nuevo ancho.
Para cambiar el tamaño de nuestro vector, necesitamos llamar a esta función con un valor para ambos parámetros mayor o igual a 0. Por ejemplo, si queremos que nuestro vector 2d tenga 10 píxeles de largo y 5 píxeles de ancho, llamaremos a esta función con un valor de 10 para su largo y 5 para su ancho.
1er código de ejemplo:
#include <iostream>
#include <vector>
using namespace std;
#define X 1
#define Y 7
int main() {
int demo = 4;
vector<vector<int>> sam;
cout << "Vector contains:" << sam.size() << endl;
sam.resize(X, vector<int>(Y, demo));
cout << "Vector contains after resize:" << sam.size() << endl;
return 0;
}
Producción :
Vector contains:0
Vector contains after resize:1
Segundo código de ejemplo:
#include <iostream>
#include <vector>
using namespace std;
int main() {
vector<int> demovec;
// set vector content
for (int x = 2; x < 20; x++) demovec.push_back(x);
demovec.resize(2);
demovec.resize(9);
cout << "Vector contains:" << endl;
for (int x = 0; x < demovec.size(); x++) cout << ' ' << demovec[x];
return 0;
}
Producción :
Vector contains:
2 3 0 0 0 0 0 0 0
Muhammad Adil is a seasoned programmer and writer who has experience in various fields. He has been programming for over 5 years and have always loved the thrill of solving complex problems. He has skilled in PHP, Python, C++, Java, JavaScript, Ruby on Rails, AngularJS, ReactJS, HTML5 and CSS3. He enjoys putting his experience and knowledge into words.
Facebook