|の間に大きな違いはありますか?+ 長期的にはコードのパフォーマンスに影響を与えますか? それとも両方ともO(1)ですか? 私が取り組んでいるコードは次のようなものです:
uint64_t dostuff(uint64_t a,uint64_t b){
// the max values of the inputs are 2^32 - 1
// lots of stuff involving boolean operators
// that have no way of being substituted by
// arithmetic operators
return (a << 32) + b;
//or
return (a << 32) | b;
}
コードは何度も使用するので、できるだけ高速化したいと考えています。