Функция Vector Resize () в C ++

Выходные данные показывают, что исходный размер вектора был 4 Программирование и разработка

Вектор — очень полезный класс C ++ для создания динамического массива. Размер вектора можно изменить в любой момент для решения любой проблемы программирования. В C ++ существует множество встроенных функций для выполнения различных типов задач в векторном контейнере. Функция resize () — одна из них. Используется для изменения размера вектора. Размер вектора можно увеличить или уменьшить с помощью этой функции. В этом руководстве было объяснено использование функции resize () в векторе C ++.

Синтаксис:

Функцию resize () можно использовать по-разному. Ниже приведены два синтаксиса этой функции.

void resize (size_type n)

Если значение n меньше исходного размера векторного объекта, то размер вектора будет уменьшен. Если значение n больше исходного размера вектора, то размер вектора будет увеличен. Если значение n равно исходному размеру вектора, то размер вектора останется неизменным.

void resize (size_type n, const value_type& value);

Если в этой функции используется второй аргумент, то значение аргумента будет добавлено в конец вектора.

Обе функции resize () ничего не возвращают.

Предварительные условия:

Прежде чем проверять примеры этого руководства, вы должны проверить, установлен ли компилятор g ++ в системе. Если вы используете Visual Studio Code, установите необходимые расширения для компиляции исходного кода C ++ и создания исполняемого кода. Здесь приложение Visual Studio Code было использовано для компиляции и выполнения кода C ++. Различные варианты использования этой функции показаны в следующей части этого руководства на различных примерах.

Пример 1: уменьшить размер вектора

Создайте файл C ++ со следующим кодом, чтобы проверить, как уменьшить размер вектора с помощью функции resize (). В коде объявлен вектор из 4 строковых значений. После печати исходного размера вектора в вектор были вставлены три новых значения. Размер вектора был снова напечатан после вставки. Функция resize () использовалась для уменьшения размера вектора до 5. Размер вектора был напечатан снова после уменьшения размера.

//Include necessary libraries

#include <iostream>

#include <vector>

using namespace std;

int main()

{

//Declare a vector of string values

vector<string> foods = {«Cake»«Pastry»«Pizza»«Burger»};

cout << «The current size of the vector: « << foods.size() << endl;

//Add three elements

foods.push_back(«Pasta»);

foods.push_back(«French Fry»);

foods.push_back(«Chicken Fry»);

cout << «The current size of the vector after insertion: « << foods.size() << endl;

//Resize the vector

foods.resize(5);

cout << «The current size of the vector after resize: « << foods.size() << endl;

return 0;

}

Выход:

Следующий вывод появится после выполнения вышеуказанного кода. Выходные данные показывают, что исходный размер вектора был 4, размер стал 7 после вставки 3 новых значений, а размер стал 5 после использования функции resize ().

Выходные данные показывают, что исходный размер вектора был 4

Пример 2: увеличить размер вектора

Создайте файл C ++ со следующим кодом, чтобы проверить, как увеличить размер вектора с помощью функции resize (). В коде объявлен вектор из 5 целых чисел. Размер исходного вектора был напечатан до увеличения размера вектора с помощью функции resize (). Размер вектора был напечатан снова после изменения размера до 8. Затем 5 чисел были вставлены в конец вектора, и размер измененного вектора был напечатан снова.

//Include necessary libraries

#include <iostream>

#include <vector>

using namespace std;

int main()

{

//Declare a vector of integer values

vector<int> numbers = {1090208030 };

cout << «The current size of the vector: « << numbers.size() << endl;

//Resize the vector

numbers.resize(8);

cout << «The current size of the vector after resize: « << numbers.size() << endl;

//Add 5 numbers into the vector

numbers.push_back(60);

numbers.push_back(40);

numbers.push_back(50);

numbers.push_back(70);

numbers.push_back(100);

cout << «The current size of the vector after insertion: « << numbers.size() << endl;

return 0;

}

Выход:

Следующий вывод появится после выполнения вышеуказанного кода. Выходные данные показывают, что исходный размер вектора был 5, размер стал 8 после изменения размера вектора, и размер стал 13 после вставки 5 элементов в вектор.

Выходные данные показывают, что исходный размер вектора был 5

Пример 3: Измените размер вектора со значениями

Создайте файл C ++ со следующим кодом, чтобы проверить, как изменить размер вектора, вставив одно и то же значение несколько раз. В коде объявлен вектор из 5 чисел с плавающей запятой. Функция resize () использовалась для изменения размера вектора до 7 и вставки числа 5,55 в вектор два раза. Содержимое исходного вектора и измененного вектора будет напечатано после выполнения кода.

// resizing of the vector

#include <iostream>

#include <vector>

using namespace std;

int main()

{

//Declare a vector of float values

vector<float> numbers = { 7.893.985.569.652.33 };

cout << «The values of the vector before resize:\n«;

//Iterate the vector using loop to print the values

for(int i = 0; i < numbers.size(); ++i)

cout << numbers[i] << » «;

cout << «\n«;

//Resize the vector with values

numbers.resize(75.55);

cout << «The values of the vector after resize:\n«;

//Iterate the vector using loop to print the values

for(int i = 0; i < numbers.size(); ++i)

cout << numbers[i] << » «;

cout << «\n«;

return 0;

}

Выход:

Следующий вывод появится после выполнения вышеуказанного кода. Выходные данные показывают, что число 5,55 было вставлено два раза в конец вектора.

Выходные данные показывают, что число 5,55 было вставлено два раза в конец вектора

Заключение

Использование функции resize () для изменения размера вектора со значением или без значения было описано в этом руководстве на простых примерах. Новый кодировщик C ++ сможет изменять размер вектора в зависимости от требований, используя функцию resize () после прочтения этого руководства.

Читайте также:  Python запрашивает файл загрузки
Оцените статью
bestprogrammer.ru
Добавить комментарий