你好,我是C++的初学者,有人可以解释一下这个吗?
char a[]="Hello";
char b[]=a; // is not legal
然而,
char a[]="Hello";
char* b=a; // is legal
如果一个数组不能被复制或赋值给另一个数组,那么为什么可以将其作为参数传递,而在方法中总是会对传递的值进行复制?
如果一个数组不能被复制或赋值给另一个数组,那么为什么可以将其作为参数传递,而在方法中总是会对传递的值进行复制?
void copy(char[] a){....}
char[] a="Hello";
copy(a);
std::vector
,它具有大多数高级语言中数组的行为。 - M.Mchar *a
。将其称为传递引用与实际通过引用传递参数(即它具有&
)相冲突。 - chris