是否可以传递 std::vector<std::vector<char>>
到函数 void doSomething(char** arr)
例如存储一堆路径
类似于
std::vector<char> vec
至 void func(char *str)
vec.assign(64, ' ');
函数调用:func(vec.data());
最佳答案
不直接,因为 vector 的 vector 不会将数组存储到其子数据地址。所以你必须构建这个数组
std::vector<char*> temp(vec.size);
for(unsigned int i=0;i<vec.size();i++) {
temp[i] = vec[i].data();
}
doSomething(temp.data());
关于c++ - 将 char vector 的 vector 传递给 char**,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30774404/