Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
void *任意のバイナリデータのブロックを表すために使用するZeroMQライブラリを使用しています。std::vectorただし、これらのブロックをコピーして移動するために使用したいと思います。std::vector生のバイトを表すための好ましい慣用的な方法は何ですか?私は現在使用してstd::vector<unsigned char>いますが、自分のコードが他の人にとって意味のあるものであることを確認したいと思います。
void *
std::vector
std::vector<unsigned char>
また
#include <cstdint> std::vector<std::uint8_t>
どちらも私には問題ないようです。
データの性質がわからない場合unsigned charは、乱雑になることなく表現できるビットの最小チャンクです。したがって、これはあらゆる種類の任意のメモリブロックに共通のタイプです。
unsigned char
ですから、あなたのベクトルはそれがそうであるように完全にうまく見えます。