-1
ビット単位の操作の順列を使用して、常に一意の結果を生成できますか?ビット演算は常に私の弱点でした。2つの数値に対するビット演算は、常に一意の結果を生成しますか?
私の目標は、OR
2つの数字は常に一意の値を生成することです。そして数字の1つは常に一定です(等価0x0111
)。すなわち、
int uniqueDelegateId1 = WM_COMMAND | btn1.id; // resolves to 0x0111 | 50008
int uniqueDelegateId2 = WM_COMMAND | btn2.id; // resolves to 0x0111 | 50009
上記の例は、両方とも50009
を生成する、ユニークな結果が得られません。別のビットワイズ演算子を使用して、常にユニークな結果を得ることができますか? xorや、などのような?