BOOST_PP_XOR
マクロはオペランドの論理的排他和 XOR に展開される。
Usage
BOOST_PP_XOR(p, q)
Arguments
-
p
: 演算における左オペランド。 有効な値の範囲は0
からBOOST_PP_LIMIT_MAG
まで。 -
q
: 演算における右オペランド。 有効な値の範囲は0
からBOOST_PP_LIMIT_MAG
まで。
Remarks
もし p
か q
が排他的に非 0 ならば、このマクロは 1
に展開される。 そうでなければ 0
に展開される。
このマクロは論理的排他和 XOR 演算を行う前に、それぞれのオペランドをブーリアンに変換する。 もしこの変換が不要なら、代わりに BOOST_PP_BITXOR
を使うこと。
See Also
Requirements
Header: <boost/preprocessor/logical/xor.hpp>
Sample Code
#include <boost/preprocessor/logical/xor.hpp>
BOOST_PP_XOR(4, 3) // expands to 0
BOOST_PP_XOR(5, 0) // expands to 1