在std :: vector中表示原始字节的最佳方法?

时间:2012-09-12 16:34:12

标签: c++ sockets stl buffer stdvector

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

2 个答案:

答案 0 :(得分:8)

无论

std::vector<unsigned char>

#include <cstdint>

std::vector<std::uint8_t>

对我来说都很好。

答案 1 :(得分:0)

如果您不知道数据的性质,unsigned char是您可以代表的最小块位而不会变得混乱。因此,它是任何类型的任意存储块的常见类型。

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