我正在编写一个数据压缩库,需要编写一系列整数编码(使用各种整数编码器)并将其存储在内存中,并在以后读取它们。
整数编码必须连续存储。由于它们的位数通常不是8的倍数,在内存中无法对齐。
简而言之,我需要类似以下函数的东西:
整数编码必须连续存储。由于它们的位数通常不是8的倍数,在内存中无法对齐。
简而言之,我需要类似以下函数的东西:
unsigned int BitReader::read_bits(size_t bits);
unsigned int BitWriter::write_bits(unsigned int num, size_t bits);
void BitWriter::get_array(char** array);
BitReader::BitReader(char *array);
由于我需要在一个非常紧密的循环中调用这些函数,所以效率至关重要(特别是在读取方面)。
你知道一些能够满足我的需求的C++库吗?谢谢。