operator== (std::layout_stride::mapping)
|
template
<
class
OtherMapping
>
friend
constexpr
bool
operator
==
(
const
mapping
&
lhs,
|
(C++23 起) | |
基于底层维度和步长,比较两个可能具有不同布局类型的布局映射。
布局映射 lhs 和 rhs 在满足以下所有条件时被视为相等:
- 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 | - | 待比较范围与步长的布局映射对象 |
返回值
如果 lhs 和 rhs 均符合上述相等条件,则为 true ,否则为 false
示例
|
本节内容不完整
原因:缺少示例 |
参见
比较
layout_left
的布局映射与其他映射
(函数模板) |
|
比较
layout_right
的布局映射与其他映射
(函数模板) |
|
|
(C++23)
|
比较两个
extents
在各维度上的底层范围
(函数) |