- simd[meta header]
- std::simd[meta namespace]
- basic_vec[meta class]
- function[meta id-type]
- cpp26[meta cpp]
friend constexpr basic_vec operator%(const basic_vec& lhs, const basic_vec& rhs) noexcept;2つのbasic_vecオブジェクトの対応する要素同士で剰余を求める。要素型が整数型である場合に使用できる。
Hidden friendsとして定義される。
式a % b(aとbはvalue_type型)が適格であること。
lhsとrhsに剰余演算を要素ごとに適用した結果で初期化されたbasic_vecオブジェクトを返す。
#include <simd>
#include <print>
namespace simd = std::simd;
int main()
{
simd::vec<int, 4> a = [](int i) { return (i + 1) * 10; }; // {10, 20, 30, 40}
int bv[] = {3, 3, 7, 6};
simd::vec<int, 4> b = [&](int i) { return bv[i]; }; // {3, 3, 7, 6}
simd::vec<int, 4> c = a % b;
for (int i = 0; i < c.size(); ++i) {
std::print("{} ", c[i]);
}
std::println("");
}- simd::vec[color ff0000]
- c.size()[link size.md]
1 2 2 4
- C++26
- Clang: 22 [mark noimpl]
- GCC: 16.1 [mark noimpl]
- Visual C++: 2026 Update 2 [mark noimpl]