[英]Unsigned char std::vector to unsigned char[]?
Simple question, how does one create a function which takes an unsigned char std::vector
and spits out an unsigned char[]
with a length
. 简单的问题,如何创建一个函数,它接受一个unsigned char std::vector
并吐出一个带有length
的unsigned char[]
。 Thanks! 谢谢!
Ah, well it seems my problem was my knowledge of std::vector. 啊,好吧看来我的问题是我对std :: vector的了解。 I always believed that std::vector did not hold its values in linear fashion. 我一直认为std :: vector没有以线性方式保持其值。 That solves a lot of my problems. 这解决了我的很多问题。 Thanks! 谢谢!
Just use: &v.front()
. 只需使用: &v.front()
。
If you need a copy use std::copy
. 如果需要副本,请使用std::copy
。
Unfortunately, it's not a one liner, but it's not too bad: 不幸的是,它不是一个班轮,但它并不太糟糕:
std::vector<unsigned char> v(10);
unsigned char* a = new unsigned char[v.size()];
std::copy(v.begin(), v.end(), a);
delete [] a;
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.