РЕПЕТИТОР математика физика информатика
Для школьников и студентов. Подтягивание пробелов. ЦЭ, ЦТ, ОГЭ, ЕГЭ.
Идет набор на ЛЕТО. Жмите для подробностей:)
368 of 815 menu

Функция copy

Функция copy копирует элементы из исходного диапазона в целевой диапазон. Первым и вторым параметрами мы передаём итераторы начала и конца исходного диапазона, а третьим - итератор начала целевого диапазона, куда будут скопированы элементы. Функция возвращает итератор на элемент в целевом диапазоне, следующий за последним скопированным.

Синтаксис

copy(first, last, result)

Пример

Давайте скопируем все элементы вектора в другой вектор:

#include <iostream> #include <vector> #include <algorithm> using namespace std; int main() { vector<int> src = {1, 2, 3, 4, 5}; vector<int> dst(5); copy(src.begin(), src.end(), dst.begin()); for (int el : dst) { cout << el << " "; } cout << endl; return 0; }

Результат выполнения кода:

1 2 3 4 5

Пример

Давайте скопируем только часть элементов вектора, начиная со второго и заканчивая четвёртым:

#include <iostream> #include <vector> #include <algorithm> using namespace std; int main() { vector<int> src = {1, 2, 3, 4, 5}; vector<int> dst(3); copy(src.begin() + 1, src.begin() + 4, dst.begin()); for (int el : dst) { cout << el << " "; } cout << endl; return 0; }

Результат выполнения кода:

2 3 4

Пример

Давайте скопируем элементы вектора в вектор строк:

#include <iostream> #include <vector> #include <string> #include <algorithm> using namespace std; int main() { vector<string> src = {"a", "b", "c", "d", "e"}; vector<string> dst(5); copy(src.begin(), src.end(), dst.begin()); for (string el : dst) { cout << el << " "; } cout << endl; return 0; }

Результат выполнения кода:

"a b c d e"

Смотрите также

  • функция copy_if,
    которая копирует элементы, удовлетворяющие условию
  • функция copy_n,
    которая копирует заданное количество элементов
  • функция copy_backward,
    которая копирует элементы в обратном порядке
  • функция move,
    которая перемещает элементы из одного диапазона в другой
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить