static constexpr integral_constant<
simd-size-type, simd-size-v<T, Abi>> size {};
概要
basic_vecが保持する要素数(「width」)を表す静的メンバ変数。
型はstd::integral_constantであり、その値が要素数を表す。
備考
sizeはstd::integral_constantであるため、関数呼び出し演算子によってv.size()のように要素数を取得できるほか、v.sizeのように直接値としても参照できる。いずれもコンパイル時定数である。
例
#include <simd>
#include <print>
namespace simd = std::simd;
int main()
{
simd::vec<int, 4> v = 0;
// 関数呼び出しの形式で要素数を取得する
std::println("{}", v.size());
// コンパイル時定数として使える
static_assert(simd::vec<int, 4>::size() == 4);
}
出力
4
バージョン
言語
- C++26
処理系
- Clang: 22 ❌
- GCC: 16.1 ❌
- Visual C++: 2026 Update 2 ❌
関連項目
参照
- P1928R15 std::simd — merge data-parallel types from the Parallelism TS 2
- C++26で
std::simdが追加された
- C++26で