如何将向量转换为函数

迈克

我有以下代码:

void func(char *vChar);

int main(void){
    std::vector<char*> vChar;
    vChar.push_back("Bla Bla Bla");

    func(vChar);
    return 0;
}

void func(char *vChar){
    std::cout << vChar->size;
}

我不知道,它说我无法将vector转换为char *。请问,vChar是什么类型?是否与int tab []中的char *相同(我的意思是制表符为int *)?

juanchopanza

如果要传递向量,请为函数提供一个参数,该参数可以是向量,也可以是对向量的引用:

void func(const vector<const char*>& vChar); // const ref if you won't modify it

请注意,字符串文字不应该绑定到非const引用(出于充分的理由在C ++ 11中已弃用),因此请将vector设为a vector<const char*>,或者vector<string>如果您希望其拥有数据。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章