gpt4 book ai didi

C++ 和数组递归

转载 作者:行者123 更新时间:2023-11-28 03:08:22 24 4
gpt4 key购买 nike

我用其他语言编程过,但现在我正在学习 C++,我发现了一个问题。我正在尝试使用一种将数组作为参数的方法来解决递归问题。也许我考虑过使用公共(public)数组,但我无法以任何方式使用该数组。

根据我的阅读,在我看来它与内存有关。 (我认为,尽管它会消耗大量内存,但每次调用都可以重新创建它。)

这是一些代码:

static void FindSolution(int row, int column, bool answer[][8][8]) {
for(int i = 0; i < 8; i++)
//Some processing…
bool temp = true;
FindSolution(0, column + 1, answer[row][column] = temp);
}
}

如何才能真正使用数组? 不知何故

错误:

error: array type 'bool [8]' is not assignable
FindSolution(0, column + 1, answer[row][column] = temp);

最佳答案

你的数组中有一个额外的 []。您已将其声明为 3D 数组,但随后您尝试将其分配给它,就像它是 2D 数组一样。编译器不高兴,因为您尝试将 bool 值分配给数组,这正是您正在做的事情:

answer[row][column] = temp;

temp 的类型为 bool,但 answer[row][column] 的类型为 bool[8] .

而不是在没有额外的 [] 的情况下声明参数:

static void FindSolution(int row, int column, bool answer[8][8]) {

关于C++ 和数组递归,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19106421/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com