operator== (std::layout_stride::mapping)
|
template
<
class
OtherMapping
>
friend
constexpr
bool
operator
==
(
const
mapping
&
lhs,
|
(C++23以降) | |
異なるレイアウトタイプを持つ可能性のある2つのレイアウトマッピングを、それらの基盤となるエクステントとストライドに基づいて比較します。
レイアウトマッピング lhs と rhs は、以下の条件のすべてが true の場合に等しいと比較されます:
-
lhs.extents()とrhs.extents()の両方が等しいこと、 -
OFFSET(rhs)が0と等しいこと、および -
範囲
[0, lhs.extents().rank())内のすべてのランクインデックスrについて、lhs.stride(r)がrhs.stride(r)と等しいこと
OFFSET ( rhs ) が次と等しい場合:
- rhs ( ) 、ただし rhs. extents ( ) . rank ( ) が 0 の場合
- それ以外の場合 0 、多次元インデックス空間 rhs. extents ( ) のサイズが 0 の場合
- それ以外の場合 rhs ( z... ) 、整数パック z が rhs. extents ( ) 内の多次元インデックスであり、かつ z の各要素が 0 に等しい場合
このオーバーロードは、以下の制約がすべて満たされる場合にのみ、オーバーロード解決に参加します:
- layout-mapping-alike < OtherMapping > が満たされていること、
- rank_ == OtherMapping :: extents_type :: rank ( ) が true であること、および
- OtherMapping :: is_always_strided ( ) が true であること
( rank_ は、 std :: layout_stride :: mapping 内で定義されている説明専用の静的メンバー定数です。)
OtherMapping
が
LayoutMapping
要件を満たさない場合、動作は未定義です。
目次 |
パラメータ
| lhs, rhs | - | 比較するエクステントとストライドを持つレイアウトマッピング |
戻り値
true が lhs と rhs が上記で指定された通りに等しい場合、 false がそれ以外の場合
例
|
このセクションは不完全です
理由: 例がありません |
関連項目
layout_left
のレイアウトマッピングを他のマッピングと比較する
(関数テンプレート) |
|
layout_right
のレイアウトマッピングを他のマッピングと比較する
(関数テンプレート) |
|
|
(C++23)
|
2つの
extents
の各次元における基盤となる範囲を比較する
(関数) |