forward_list emplace_after () и emplace_front () в C ++ STL
Опубликовано: 30 Декабря, 2021
- Forward_list :: emplace_after () - это встроенная функция в C ++ STL, которая используется для вставки нового элемента после элемента в позиции, указанной в аргументе. Эта вставка нового элемента увеличивает размер контейнера на единицу.
Синтаксис:
forward_list_name.emplace_after (позиция итератора, элементы)
Параметры: функция принимает два обязательных параметра, которые описаны ниже:
- позиция: он указывает итератор, который указывает на позицию в контейнере, после которой должен быть вставлен новый элемент.
- element: указывает новый элемент, который будет вставлен после позиции.
Возвращаемое значение: эта функция возвращает итератор, указывающий на вновь вставленный элемент.
Программа ниже иллюстрирует вышеупомянутую функцию:
// C++ program to illustrate the
// forward_list::emplace_after() function
#include <forward_list>
#include <iostream>
using
namespace
std;
int
main()
{
forward_list<
int
> fwlist = { 1, 2, 3, 4, 5 };
auto
it_new = fwlist.before_begin();
// use of emplace_after function
// inserts elements at positions
it_new = fwlist.emplace_after(it_new, 8);
it_new = fwlist.emplace_after(it_new, 10);
// cout << "The elements are: "
for
(
auto
it = fwlist.cbegin(); it != fwlist.cend(); it++) {
cout << *it <<
" "
;
}
return
0;
}
Выход:
Элементы: 8 10 1 2 3 4 5
- Forward_list :: emplace_front () - это встроенная функция в C ++, которая используется для вставки нового элемента в начало forward_list непосредственно перед первым элементом. Это увеличивает размер контейнера на единицу.
Синтаксис:
forward_list_name.emplace_front (элементы)
Параметры: функция принимает один обязательный элемент параметра, который должен быть вставлен в начало контейнера.
Возвращаемое значение: ничего не возвращает.
Программа ниже иллюстрирует вышеуказанную функцию.
// C++ program to illustrate the
// forward_list::emplace_front() function
#include <forward_list>
#include <iostream>
using
namespace
std;
int
main()
{
forward_list<
int
> fwlist = { 1, 2, 3, 4, 5 };
// use of emplace_front function
// inserts elements at front
fwlist.emplace_front(8);
fwlist.emplace_front(10);
cout <<
"Elements are: "
;
// Auto iterator
for
(
auto
it = fwlist.cbegin(); it != fwlist.cend(); it++) {
cout << *it <<
" "
;
}
return
0;
}
Выход:
Элементы: 10 8 1 2 3 4 5
Хотите узнать о лучших видео и практических задачах, ознакомьтесь с базовым курсом C ++ для базового и продвинутого уровня C ++ и курсом C ++ STL для базового уровня плюс STL. Чтобы завершить подготовку от изучения языка к DS Algo и многому другому, см. Полный курс подготовки к собеседованию .