命名空间
变体
操作

std::layout_left::mapping

来自 cppreference.com
< cpp‎ | container‎ | mdspan‎ | layout left
 
 
 
 
 
在头文件 <mdspan> 中定义
template< class Extents >
class layout_left::mapping;
(自 C++23 起)

类模板 layout_left::mapping 控制如何以列主序方式将多维索引映射到表示偏移量的单维值。映射在最左侧范围的跨度为 1,跨度从左到右增加,作为范围的乘积。

mapping 的每个特化都是一个 LayoutMapping 和一个 TriviallyCopyable 类型,它满足 regular

如果多维索引空间的大小 Extents() 不能表示为类型 Extents::index_type 的值,则程序格式不正确,当 Extents::rank_dynamic()0 时。

内容

[edit] 模板参数

Extents - 指定维数、大小和哪些是在编译时已知的。必须是 std::extents 的特化。

[edit] 成员类型

成员类型 定义
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_left

[edit] 成员对象

成员名称 定义
extents_ (private) 类型为 extents_type 的范围。
(仅供说明的成员对象*)

[edit] 成员函数

构造一个新的映射
(public 成员函数) [edit]
分配一个映射
(public 成员函数) [edit]
观察者
获取范围对象
(public 成员函数) [edit]
返回映射所需的尺寸
(public 成员函数) [edit]
将多维索引映射到偏移值
(public 成员函数) [edit]
[静态]
确定此映射是否唯一(每个索引组合都映射到不同的底层元素)
(public 静态成员函数) [edit]
确定此映射是否穷尽(每个底层元素都可以通过某些索引组合访问)
(public 静态成员函数) [edit]
[静态]
确定此映射是否唯一(每个索引组合都映射到不同的底层元素)
(public 静态成员函数) [edit]
确定此布局映射是否始终唯一
(public 静态成员函数) [edit]
确定此布局映射是否始终穷尽
(public 静态成员函数) [edit]
确定此布局映射是否始终是跨度的
(public 静态成员函数) [edit]
获取指定维度的跨度
(public 成员函数) [edit]

[edit] 非成员函数

将此布局映射与其他映射进行比较
(函数模板) [edit]
计算 subdmspan 使用的映射和数据句柄偏移量
(公共成员函数) [编辑]

[编辑] 另请参见

layout_right 的布局映射
(std::layout_right 的公共成员类模板)[编辑]
layout_stride 的布局映射
(std::layout_stride 的公共成员类模板)[编辑]