struct
C++ 標準では、組み込み型とまたは型が区別されclass
ます。後者の場合、適切な演算子が言語によって提供されている場合、 +
、*=
、またはなどの演算子をオーバーロードでき&
ますが、組み込み型の場合は許可されません。私の知る限り、SSE/AVX タイプは標準で言及されていないため (ただし、私を修正してください)、これらの演算子を宣言できるはずです。GCC では許可されていませんが、ICC では許可されています。どちらが正しいですか?
本当にビット単位の操作 ( など&=
) が必要ですが、厄介なことに、GCC はそれらを提供しておらず ( for __m128
)、宣言することもできません。