C++二维数组传参时,显示argument of type A is incompatible with parameter of type B的原因
时间: 2023-12-01 07:02:46 浏览: 209
指针数组作main函数的形参-C++ 指针教材
C++中二维数组的传参机制与C语言类似,也需要指定每一行的列数。如果传递的参数类型与函数定义的参数类型不匹配,就会出现类型不兼容的错误。
例如,如果函数定义如下:
```
void func(int arr[][3], int rows) {
// ...
}
```
那么传递二维数组参数时,需要保证列数为3,否则会出现类型不兼容的错误。此外,如果传递的参数类型不是二维数组类型,也会导致这个错误。例如,如果传递的是一维数组或者指针类型的参数,就会出现类型不兼容的错误。在C++中,可以使用模板来实现传递任意维度的数组参数,这样可以避免类型不兼容的问题。
阅读全文