我将一个布尔数组传递给函数并在函数内部对传递的数组进行一些修改,我在函数中所做的更改反映在我传递给函数的原始数组中。例如,在输出下方的代码中是。1
为什么我得到这个输出?例如,当我们传递一个整数变量时,局部变量保持其局部值。如何在下面的代码中本地保留原始 bool 数组的本地副本。
#include<iostream>
using namespace std;
void fun(bool A[30])
{
A[0]=true;
}
int main()
{
bool used[3];
used[0]=used[1]=used[2]=0;
fun(used);
cout<<used[0];
}