std::ranges::concat_view<视图...>::concat_view
来自 zh.cppreference.net
concat_view() = default;
|
(1) | (since C++26) |
constexpr concat_view( Views... views );
|
(2) | (since 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}']