2

我正在使用 ZeroMQ 库void *来表示任意二进制数据块。但是我想std::vector用来复制和移动这些块。std::vector制作表示原始字节的首选惯用方式是什么?我目前正在使用 astd::vector<unsigned char>但我想确保我的代码对其他人有意义。

4

2 回答 2

8

任何一个

std::vector<unsigned char>

或者

#include <cstdint>

std::vector<std::uint8_t>

在我看来,两者都很好。

于 2012-09-12T16:35:27.363 回答
0

如果您不知道数据的性质,unsigned char那么您可以在不弄乱的情况下表示最小的位块。因此,它是任何类型的任意内存块的常见类型。

所以你的矢量看起来非常好。

于 2012-09-12T16:36:36.770 回答