std::layout_left::mapping
來自 cppreference.com
< cpp | 容器 | 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 時,程式是 ill-formed 的。
目錄 |
[編輯] 模板引數
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_left |
[編輯] 資料成員
成員 | 定義 |
extents_type extents_ (private) |
擴充套件物件 (僅用於闡釋的成員物件*) |
[編輯] 成員函式
構造一個新對映 (public 成員函式) | |
operator= (顯式預設) |
賦值一個對映 (public 成員函式) |
觀察器 | |
獲取區段物件 (public 成員函式) | |
返回對映的所需大小 (public 成員函式) | |
將多維索引對映到偏移量值 (public 成員函式) | |
[靜態] |
確定此對映是否唯一(索引的每個組合對映到不同的底層元素) (public static 成員函式) |
[靜態] |
確定此對映是否詳盡(每個底層元素都可以透過某些索引組合訪問) (public static 成員函式) |
[靜態] |
確定此對映是否帶步幅(在每個維度中,每次增加一個索引都跳過相同數量的底層元素) (public static 成員函式) |
[靜態] |
確定此佈局對映是否總是唯一的 (public static 成員函式) |
確定此佈局對映是否總是詳盡的 (public static 成員函式) | |
確定此佈局對映是否總是帶步幅的 (public static 成員函式) | |
獲取沿指定維度的步長 (public 成員函式) |
[編輯] 非成員函式
將此 layout_left 的佈局對映與其他對映進行比較(函式模板) | |
計算用於 subdmspan 的對映和資料控制代碼偏移量(public 成員函式) |
[編輯] 另請參閱
layout_right 的佈局對映 ( std::layout_right 的公共成員類模板) | |
layout_stride 的佈局對映 ( std::layout_stride 的公共成員類模板) |