最終更新日時: 2024年01月19日 00時38分06秒 (JST)
yoh が更新

履歴 編集

function template
<mdspan>

# std::extents::operator==(C++23)

    template<class OtherIndexType, size_t... OtherExtents>
    friend constexpr bool operator==(
      const extents& lhs,
      const extents<OtherIndexType, OtherExtents...>& rhs) noexcept;

    //operator==により、以下のオーバーロードが使用可能になる
    template<class OtherIndexType, size_t... OtherExtents>
    friend constexpr bool operator!=(
      const extents& lhs,
      const extents<OtherIndexType, OtherExtents...>& rhs) noexcept;

## 概要

`extents`の等値比較を行う。

## 戻り値

`lhs`と`rhs`の次元数`rank`が等しく、かつ全次元の要素数`extent`が等しいときに`true`を返す。そうでなければ`false`を返す。

## 例外

投げない

## 例

    #include <cassert>
    #include <mdspan>

    int main()
    {
      using Ext3x4 = std::extents<size_t, 3, 4>;
      Ext3x4 ext1;

      using Ext3xN = std::extents<size_t, 3, std::dynamic_extent>;
      Ext3xN ext2{4};

      assert(ext1 == ext2);
    }

### 出力

## バージョン

### 言語

- C++23

### 処理系

- Clang: ??
- GCC: ??
- ICC: ??
- Visual C++: ??

## 参照

- P0009R18 MDSPAN