- [meta exposition-only]
- simd[meta header]
- concept[meta id-type]
- std::simd[meta namespace]
- cpp26[meta cpp]
namespace std::simd {
template<class V>
concept simd-vec-type =
same_as<V, basic_vec<typename V::value_type, typename V::abi_type>> &&
is_default_constructible_v<V>;
}- basic_vec[link basic_vec.md]
- is_default_constructible_v[link /reference/type_traits/is_default_constructible.md]
simd-vec-typeは、型Vがbasic_vecの特殊化であることを表す説明専用のコンセプトである。
Vが、自身のvalue_typeとabi_typeから構築されるbasic_vec<value_type, abi_type>と同じ型であり、かつデフォルト構築可能である場合にモデルとなる。std::simdの多くの関数は、このコンセプト(およびこれを土台とするsimd-floating-point・simd-integral・simd-complex)をテンプレートパラメータ制約として使用する。
- C++26
std::simd::basic_vecstd::simd::simd-mask-typestd::simd::simd-floating-pointstd::simd::simd-integralstd::simd::simd-complex
- P1928R15 std::simd — merge data-parallel types from the Parallelism TS 2
- C++26で
std::simdライブラリが追加された
- C++26で