Namespaces
Variants

std::layout_left:: mapping

From cppreference.net
定义于头文件 <mdspan>
template < class Extents >
class layout_left :: mapping ;
(C++23 起)

类模板 layout_left::mapping 控制多维索引如何以列主序方式映射到表示偏移量的一维值。该映射在最左侧维度具有步长1,且步长从左到右按各维度大小的乘积递增。

mapping 的每个特化都是一个 LayoutMapping 且为满足 regular TriviallyCopyable 类型。

Extents :: rank_dynamic ( ) 0 时,若多维索引空间 Extents ( ) 的大小无法表示为 Extents :: index_type 类型的值,则程序非良构。

目录

模板参数

维度范围 - 指定维度数量、各维度大小以及哪些维度在编译时已知。必须是 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_left

数据成员

成员 定义
extents_type extents_ (私有) 维度范围对象
( 仅用于说明的成员对象* )

成员函数

构造新的映射
(公开成员函数)
operator=
(explicitly defaulted)
赋值映射
(公开成员函数)
观察器
获取维度对象
(公开成员函数)
返回映射所需的尺寸
(公开成员函数)
将多维索引映射为偏移值
(公开成员函数)
[static]
判断此映射是否唯一(每个索引组合都映射到不同的底层元素)
(公开静态成员函数)
判断此映射是否穷举(每个底层元素都能通过某些索引组合访问)
(公开静态成员函数)
[static]
判断此映射是否跨步(在每个维度中,递增索引每次跳过相同数量的底层元素)
(公开静态成员函数)
判断此布局映射是否始终唯一
(公开静态成员函数)
判断此布局映射是否始终穷举
(公开静态成员函数)
判断此布局映射是否始终跨步
(公开静态成员函数)
获取指定维度的步长
(公开成员函数)

非成员函数

比较此 layout_left 布局映射与其他映射
(函数模板)
计算用于 subdmspan 的映射和数据句柄偏移量
(公开成员函数)

参见

layout_right 的布局映射
( std::layout_right 的公开成员类模板)
layout_stride 的布局映射
( std::layout_stride 的公开成员类模板)