std::layout_right::mapping
来自 cppreference.com
< cpp | container | mdspan | layout right
在头文件 <mdspan> 中定义 |
||
template< class Extents > class layout_right::mapping; |
(自 C++23 起) | |
类模板 layout_right::mapping
控制多维索引如何以行优先的方式映射到表示偏移量的一维值。映射在最右边的维度上步长为 1,步长从右到左增加,作为维度大小的乘积。
mapping
的每个特化都是一个 LayoutMapping 并且是一个 TriviallyCopyable 类型,满足 regular
。
如果多维索引空间的大小 Extents() 不能表示为类型 Extents::index_type 的值,则程序格式错误,其中 Extents::rank_dynamic() 为 0。
内容 |
[编辑] 模板参数
Extents | - | 指定维度的数量、大小以及哪些在编译时是已知的。必须是 std::extents 的特化。 |
[编辑] 成员类型
成员名称 | 定义 |
extents_type
|
Extents
|
index_type
|
extents_type::index_type
|
size_type
|
extents_type::size_type
|
rank_type
|
extents_type::rank_type
|
layout_type
|
std::layout_right |
[编辑] 成员对象
成员名称 | 定义 |
extents_ (私有) |
类型为 extents_type 的维度。(仅供说明的成员对象*) |
[编辑] 成员函数
构造新的映射 (公共成员函数) | |
赋值映射 (公共成员函数) | |
观察者 | |
获取维度对象 (公共成员函数) | |
返回映射所需的跨度大小 (公共成员函数) | |
将多维索引映射到偏移量值 (公共成员函数) | |
[静态] |
确定此映射是否唯一(每个索引组合都映射到不同的底层元素) (公共静态成员函数) |
[静态] |
确定此映射是否详尽无遗(每个底层元素都可以通过某些索引组合访问) (公共静态成员函数) |
[静态] |
确定此映射是否唯一(每个索引组合都映射到不同的底层元素) (公共静态成员函数) |
[静态] |
确定此布局映射是否始终唯一 (公共静态成员函数) |
确定此布局映射是否始终详尽无遗 (公共静态成员函数) | |
确定此布局映射是否始终是跨度的 (公共静态成员函数) | |
获取指定维度的步长 (公共成员函数) |
[编辑] 非成员函数
将此布局映射与其他映射进行比较 (函数模板) | |
计算用于 subdmspan 的映射和数据句柄偏移量(公共成员函数) |
[编辑] 示例
本节尚未完善 原因:没有示例 |
[编辑] 参见
的布局映射 layout_left ( std::layout_left 的公共成员类模板) | |
一个 layout_stride 的布局映射 ( std::layout_stride 的公共成员类模板) |