まず、このような質問をする無知をお許しください。しかし、私は Python が得意ではないので、どうすることもできませんでした。
C++ に変換する必要がある次の Python コードに出会いました。
def getSignedNumber(number, bitLength):
mask = pow(2,bitLength) - 1
if number & (1 << (bitLength - 1)):
return number | ~mask
else:
return number & mask
def getUnsignedNumber(number, bitLength):
mask = pow(2,bitLength) - 1
return number & mask
これは、unsigned int を signed int に、またはその逆に変換するために使用されます。しかし、対応する型にキャストするだけで十分だと思うので、なぜこれをしなければならないのかわかりません。Python は動的型言語であり、この種の操作が必要なためでしょうか。ここで何か不足していますか?