std::span задает невладеющий вид на элементы, лежащие подряд в памяти.">
Следите за новинками
в нашем Telegram канале. Жми, чтобы подписаться:)
⊗cpSpSnInr 239 of 696 menu
◀ ▶

Введение в std::span в C++

Чужую непрерывную память показывает шаблон std::span из стандарта C++20, который ссылается на уже существующую непрерывную последовательность и не владеет ее памятью.

Такой тип удобен, когда функции и алгоритмы должны работать и с массивом C, и с буфером вектора, не зная конкретного контейнера. Заголовок подключают как #include <span>.

Запишем массив целых, построим из него std::span<int> и выведем первый элемент:

#include <span> int vals[] = {4, 5, 6}; std::span<int> chunk{vals}; std::cout << chunk[0] << "\n";

Пока живет исходное хранилище, представление указывает на те же адреса: изменение элемента массива видно через span.

← →
↑
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить