名稱空間
變體
操作

std::layout_right::mapping

來自 cppreference.com
< cpp‎ | 容器‎ | mdspan‎ | layout_right
 
 
 
 
 
定義於標頭檔案 <mdspan>
template< class Extents >
class layout_right::mapping;
(C++23 起)

類模板 layout_right::mapping 控制多維索引如何以行主序方式對映到表示偏移量的一維值。該對映在最右邊的維度的步長為 1,並且從右到左,步長按維度乘積遞增。

mapping 的每個特化都是一個 LayoutMapping 和一個 TriviallyCopyable 型別,它滿足 regular

如果當 Extents::rank_dynamic()0 時,多維索引空間 Extents() 的大小無法表示為 Extents::index_type 型別的值,則程式是病態的。

目錄

[編輯] 模板引數

Extents - 指定維度數、它們的大小以及哪些在編譯時已知。必須是 std::extents 的特化。

[編輯] 成員型別

成員名稱 (Member name) 定義
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_type extents_ (私有) 擴充套件物件
(僅用於闡釋的成員物件*)

[編輯] 成員函式

構造一個新對映
(公共成員函式) [編輯]
operator=
(顯式預設)
賦值一個對映
(公共成員函式) [編輯]
觀察器
獲取區段物件
(公共成員函式) [編輯]
返回對映的所需大小
(公共成員函式) [編輯]
將多維索引對映到偏移量值
(公共成員函式) [編輯]
[靜態]
確定此對映是否唯一(索引的每個組合對映到不同的底層元素)
(公共靜態成員函式) [編輯]
確定此對映是否詳盡(每個底層元素都可以透過某些索引組合訪問)
(公共靜態成員函式) [編輯]
[靜態]
確定此對映是否帶步幅(在每個維度中,每次增加一個索引都跳過相同數量的底層元素)
(公共靜態成員函式) [編輯]
確定此佈局對映是否總是唯一的
(公共靜態成員函式) [編輯]
確定此佈局對映是否總是詳盡的
(公共靜態成員函式) [編輯]
確定此佈局對映是否總是帶步幅的
(公共靜態成員函式) [編輯]
獲取沿指定維度的步長
(公共成員函式) [編輯]

[編輯] 非成員函式

比較此 layout_right 的佈局對映與另一個對映
(函式模板) [編輯]
計算用於 subdmspan 的對映和資料控制代碼偏移量
(公共成員函式) [編輯]

[編輯] 示例

[編輯] 另請參閱

layout_left 的佈局對映
(std::layout_left 的公共成員類模板)[編輯]
layout_stride 的佈局對映
(std::layout_stride 的公共成員類模板)[編輯]