Namespaces
Variants

C++ named requirements: LayoutMappingPolicy (since C++23)

From cppreference.net
C++ named requirements

LayoutMappingPolicy は、 std:: mdspan のレイアウトポリシーを指定するために使用される型です。これは、その特殊化が LayoutMapping 型となるメンバエイリアステンプレートを提供します。

目次

要件

MP LayoutMappingPolicy を満たすのは、以下に示す型要件が有効である場合です:

凡例

定義
MP レイアウトマッピングポリシークラス
M レイアウトマッピングクラス
E std:: extents の特殊化

型要件

  • MP :: mapping < E > は有効であり、 LayoutMapping を満たす型 M を表す。
  • M :: layout_type は有効であり、型 MP を表す。
  • M :: extents_type は有効であり、型 E を表す。

標準ライブラリ

以下の標準ライブラリ型は LayoutMappingPolicy 要件を満たします:

列優先多次元配列レイアウトマッピングポリシー; 左端のエクステントがストライド 1 を持つ
(クラス)
行優先多次元配列レイアウトマッピングポリシー; 右端のエクステントがストライド 1 を持つ
(クラス)
ユーザー定義ストライドを持つレイアウトマッピングポリシー
(クラス)
左端のエクステント以上のパディングストライドを持つ列優先レイアウトマッピングポリシー
(クラステンプレート)
右端のエクステント以上のパディングストライドを持つ行優先レイアウトマッピングポリシー
(クラステンプレート)
名前空間 std::linalg で定義
std::mdspan 任意のユニークレイアウトマッピングポリシーの右端2つのインデックス、エクステント、ストライドを交換するレイアウトマッピングポリシー
(クラステンプレート)
std::mdspan 一方の三角形のエントリのみをパックされた連続形式で格納する正方行列を表すレイアウトマッピングポリシー
(クラステンプレート)