Skip to content

Latest commit

 

History

History
65 lines (49 loc) · 1.64 KB

File metadata and controls

65 lines (49 loc) · 1.64 KB

size

  • simd[meta header]
  • std::simd[meta namespace]
  • basic_mask[meta class]
  • variable[meta id-type]
  • cpp26[meta cpp]
static constexpr integral_constant<
  simd-size-type, mask-size-v<Bytes, Abi>> size {};
  • simd-size-type[link /reference/simd/simd-size-type.md]
  • mask-size-v[link /reference/simd/mask-size-v.md]
  • integral_constant[link /reference/type_traits/integral_constant.md]

概要

basic_maskが保持する要素数を表す静的メンバ変数である。

要素数を型情報として保持するstd::integral_constantであり、sizeまたはsize()のように関数呼び出し構文でも要素数を取得できる。

対応するbasic_vecの要素数と一致する。

#include <simd>
#include <print>

namespace simd = std::simd;

int main()
{
  simd::mask<int, 4> m{true};

  // 静的メンバ変数としてアクセスできる
  std::println("{}", simd::mask<int, 4>::size);

  // integral_constantであるため、関数呼び出し構文でも取得できる
  std::println("{}", m.size());
}
  • simd::mask[link ../basic_mask.md]
  • size[color ff0000]
  • m.size()[color ff0000]

出力

4
4

バージョン

言語

  • C++26

処理系

参照