显然,我们可以将复杂的类实例传递给函数,但是为什么我们不能将数组传递给函数呢?
最佳答案
起源是历史的。问题是“数组在传递给函数时衰减为指针”的规则很简单。
复制数组会有点复杂而且不是很清楚,因为行为会因不同的参数和不同的函数声明而改变。
请注意,您仍然可以通过值进行间接传递:
struct A { int arr[2]; };
void func(struct A);
关于c++ - 为什么我们不能通过值传递数组来函数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7454990/