我需要为3个字节的整数创建一个结构。我已经实现了从int24到int的转换,现在我需要实现从float到int24的转换。 我如何做而不创建方法,例如。 int24.toFloat()?
int24::operator int() const {
int i = 0;
i = *((int*)this) & 0xFFFFFF;
if ((b3 & 0x80) > 0)
i |= 0xFF000000;
return i;
}
struct int24 {
char b1, b2, b3;
operator int() const;
operator unsigned int() const;
};