C++ 将指针数组用作函数的参数
所以,我们试图创建一个指向对象的指针数组并将其传递给函数,但我遇到了错误。 我已经声明了一个数组C++ 将指针数组用作函数的参数,c++,C++,所以,我们试图创建一个指向对象的指针数组并将其传递给函数,但我遇到了错误。 我已经声明了一个数组 shapes *myArray[2]; 有功能的 void addShape(shapes *myArray[]); 通过阵列 addShape(myArray); 它不工作。错误:“int*”类型的参数与“int**”类型的参数不兼容 在这里做什么?应该是 void addShape(shapes* (&myArray)[2]); 使用std::vector的std::array更
shapes *myArray[2];
有功能的
void addShape(shapes *myArray[]);
通过阵列
addShape(myArray);
它不工作。错误:“int*”类型的参数与“int**”类型的参数不兼容
在这里做什么?应该是
void addShape(shapes* (&myArray)[2]);
使用
std::vector
的std::array
更直观,如果您解释shapes*myArray[]
作为函数参数的含义,OP可能更有意义:-)这是一个我应该创建指针数组的赋值。我不太明白这个答案,但我可能一开始就误解了这个问题,因为我无法重现这个问题。你是Stackoverflow上第一百万个想知道为什么数组不能按值传递给函数的人。如果我把你确切的问题标题粘贴到谷歌搜索文本字段中,那么第一次点击就会让我找到一个Stackoverflow问题,它回答了你提出的所有问题。。请邮寄一份可能的副本