二进制数据的 C++ STL 字符串等效项
我正在编写一个 C++ 应用程序,我想知道 C++ 在内存中存储字节数组的传统方式是什么.
I am writing a C++ application and I was wondering what the C++ conventional way of storing a byte array in memory.
是否有类似字符串的东西,除了专门为二进制数据制作的.
Is there something like a string, except specifically made for binary data.
现在我使用 *unsigned char** 数组来存储数据,但更像 STL/C++ 的东西会更好.
Right now I am using a *unsigned char** array to store the data, but something more STL/C++ like would be better.
推荐答案
我会使用 std::vector
.您需要的大多数操作都可以使用带有迭代器范围的 STL 来完成.另外,请记住,如果您确实需要原始数据,&v[0]
保证会提供指向底层数组的指针.
I'd use std::vector<unsigned char>
. Most operations you need can be done using the STL with iterator ranges. Also, remember that if you really need the raw data &v[0]
is guaranteed to give a pointer to the underlying array.
相关文章