C++中的多维数组再次出现问题
Problems with multidimension arrays in C++ again
>我在反向调用中将多维数组传递给函数,如下所示:
template<int size>
void print_multidimension_array(int A[][size], int &cnt){
if(cnt <= 0){
return;
}
else{
int (*B)[size];
print_multidimension_array(B, cnt--);
}
}
int main(int argc, const char * argv[])
{
int A[3][3] = {{1,2,3}, {4,5,6}, {7,8,9}};
int count = 5;
print_multidimension_array(A, count);
}
我没有收到任何编译错误,但是在我将其投入运行后,我被告知"没有匹配函数来调用'print_multidimension_array'"。感谢您的任何帮助或建议。
cnt--
返回旧值 cnt
的副本。这是一个临时的右值,不能绑定到引用 - 所以它不能用作函数的第二个参数。
我怀疑你想要--cnt
.这给出了一个引用新值的左值,该值可以绑定到引用。
按值获取参数将修复编译器错误;但您仍然需要预先递减以避免无限循环。
更改:
void print_multidimension_array(int A[][size], int &cnt){
自:
void print_multidimension_array(int A[][size], int cnt){
相关文章:
- cpp二进制搜索问题,计算给定数组中输入元素的出现次数
- 输入std::数组时出现问题
- 类对象数组的问题会导致崩溃
- 传递二维数组时出现问题
- 从 C++ 中的函数返回数组地址问题
- 使用数组时出现问题
- 打印问题.我在数组中打印值时遇到一些问题
- C++:__aligned(__alignof__) 导致字符数组数据出现问题?
- 将字节数组转换为带有字节序问题的指针
- C++ 填充数组时遇到问题
- 遇到此问题时遇到困难:允许用户输入数组的值并使用 for,而循环也输出输入的最大数字
- 这是使用回溯的 nqueen 问题,但我使用了动态 2d 数组,我的程序编译良好,但不返回任何输出
- 当我尝试通过 arduino 上的引用传递布尔数组时出现问题
- 我正在尝试解决一个需要数组总和值但代码不起作用的问题,我想做这样的事情
- 编写 cin.get() 以接收字符数组时出现问题
- 在 C++ Consol 中的数组中执行用户命令时出现问题
- 存储另一个函数返回的布尔数组时遇到问题
- 当我在 CLion 中读取数组中的 txt 文件时C++编码问题
- 运行时C++数组初始化问题
- 我在解决此错误时遇到问题.我正在努力在主函数中传递数组