std::ranges::concat_view<Представления...>::concat_view
От ru.cppreference.net
concat_view() = default;
|
(1) | (начиная с C++26) |
constexpr concat_view( Views... views );
|
(2) | (начиная с C++26) |
Создаёт concat_view.
1) Конструктор по умолчанию. Инициализирует значением базовые представления.
2) Инициализирует базовые представления с помощью
std::move(views)....Параметры
| представления | - | объекты представлений для адаптации |
Примечания
Для вызова конструктора по умолчанию
Views
должен быть явно указан, и все содержащиеся в нем типы должны поддерживать инициализацию по умолчанию.
Пример
Запустить этот код
#include <algorithm>
#include <print>
#include <ranges>
int main()
{
using namespace std::ranges;
static constexpr concat_view<empty_view<char>> concat1{}; // overload (1)
static_assert(equal(concat1, views::empty<char>));
static constexpr auto con = {'c', 'o', 'n'};
static constexpr char cat[]{'c', 'a', 't', '\0'};
static constexpr auto concat2{views::concat(con, cat)}; // overload (2)
static_assert(equal(concat2, "concat"));
std::println("{}", concat2);
}
Вывод:
['c', 'o', 'n', 'c', 'a', 't', '\u{0}']