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

Vector Insert Function C



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

Синтаксис:

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







вставка итератора(позиция const_iterator,constтип значения&ценить);

Вышеупомянутая функция insert () используется для вставки значения аргумента value перед позицией элемента вектора, упомянутого аргументом position. Он возвращает итератор, указывающий на вновь вставленный элемент вектора.



вставка итератора(позиция итератора, size_type n,constтип значения&ценить);

Вышеупомянутая функция insert () будет работать аналогично функции insert (), упомянутой ранее, но она будет вставлять одно и то же значение несколько раз в векторный объект.



вставка итератора(позиция const_iterator, сначала InputIterator, последним InputIterator);

Вышеупомянутая функция insert () будет вставлять диапазон элементов перед позицией векторного элемента, упомянутого аргументом position. Он возвращает итератор, который указывает на вновь вставленные элементы вектора, как и две предыдущие функции insert ().





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

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

Пример-1: Вставка одного элемента

Создайте файл C ++ со следующим кодом для вставки одного элемента с помощью функции insert (). В коде объявлен вектор из 5 чисел с плавающей запятой. Первая функция insert () использовалась для вставки числа в начало вектора с помощью функции begin (). Вторая функция insert () использовалась для вставки числа в начало вектора с помощью переменной итератора. Третья функция insert () должна вставить число в четвертую позицию вектора.



// Включаем необходимые библиотеки

#включают

#включают

с использованием пространство именчасы;

// Отображаем вектор

пустотаотображать(вектор<плавать>числа)

{

// Распечатываем значения вектора с помощью цикла

для(автоонзнак равночисла.начинать();он!знак равночисла.конец() ;он++)

Стоимость << *он<< '';

// Добавляем новую строку

Стоимость << ' п';

}

intглавный()

{

// Инициализируем вектор

вектор<плавать>ценазнак равно { 78,56,34,07,2. 3,Четыре пять,61,08,29,3 };

Стоимость << 'Исходный вектор:';

отображать(цена);

// Вставляем число спереди, используя begin ()

автоитераторзнак равноцена.вставлять(цена.начинать(),42,67);

Стоимость << 'Вектор после первой вставки:';

отображать(цена);

// Вставляем число спереди с помощью итератора

цена.вставлять(итератор30,76);

Стоимость << 'Вектор после второй вставки:';

отображать(цена);

// Инициализируем целочисленную переменную

intпозициязнак равно 3;

// Вставляем число в конкретную позицию

итераторзнак равноцена.вставлять(цена.начинать() +позиция,52,56);

Стоимость << 'Вектор после третьей вставки:';

отображать(цена);

возвращение 0;

}

Выход:

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

Пример-2: Вставка одного элемента несколько раз

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

// Включаем необходимые библиотеки

#включают

#включают

с использованием пространство именчасы;

// Отображаем вектор

пустотаотображать(вектор<int>числа)

{

// Распечатываем значения вектора с помощью цикла

для(автоонзнак равночисла.начинать();он!знак равночисла.конец() ;он++)

Стоимость << *он<< '';

// Добавляем новую строку

Стоимость << ' п';

}

intглавный()

{

// Инициализируем вектор

вектор<int>intArray{7,5,12,4,Четыре пять,3,64,10};

Стоимость << 'Исходный вектор:';

отображать(intArray);

// Вставляем одно и то же число несколько раз в конец вектора

intArray.вставлять(intArray.конец(),5,пятьдесят);

Стоимость << 'Вектор после пятикратной вставки одного и того же числа:';

отображать(intArray);

Стоимость << ' п';

возвращение 0;

}

Выход:

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

Пример-3: Вставка диапазона элементов

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

// Включаем необходимые библиотеки

#включают

#включают

с использованием пространство именчасы;

// Определяем прототип функции

пустотаотображать(вектор<нить>список);

intглавный()

{

// Объявление первого строкового вектора

вектор<нить>list1{'html','css','javascript','бутстрап'};

// Объявление второго строкового вектора

вектор<нить>list2{'php','Джава','питон','баш','perl'};

Стоимость<<'Значения списка1:';

отображать(list1);

Стоимость<<'Значения списка2:';

отображать(list2);

// Вставляем значения list2 в начало list1

список1.вставлять(список1.начинать(), список2.начинать(), список2.конец());

Стоимость<<'Значения списка1 после вставки списка2:';

отображать(list1);

возвращение 0;

}

// Отображаем вектор

пустотаотображать(вектор<нить>список)

{

// Распечатываем значения вектора с помощью цикла

для(автоонзнак равносписок.начинать();он!знак равносписок.конец() ;он++)

Стоимость << *он<< '';

// Добавляем новую строку

Стоимость << ' п';

}

Выход:

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

Заключение:

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