我尝试将std::vector
用作char
数组。
我的函数接受一个空指针:
void process_data(const void *data);
在我简单地使用这段代码之前:
char something[] = "my data here";
process_data(something);
它的工作效果与预期一致。
但现在我需要std::vector
的动态性,所以我尝试了以下代码:
vector<char> something;
*cut*
process_data(something);
问题是,我如何将char向量传递给我的函数,这样我就可以访问向量原始数据(无论它是什么格式-浮点数,等等)?
我试过这个:
process_data(&something);
还有这个:
process_data(&something.begin());
但它返回了一个指向乱码数据的指针,而后者给出了警告:warning C4238: nonstandard extension used : class rvalue used as lvalue
。
https://stackoverflow.com/questions/6485496
复制相似问题