读书人

C++中 怎么使用 引用数组 传参

发布时间: 2013-02-05 10:40:57 作者: rapoo

C++中 如何使用 引用数组 传参
子函数处理数组后,返回主函数,使得数组处理后的状态得到保持。 c++
[解决办法]
直接传,数组为参弱化为指针, 直接修改指向内容,就可修改。
[解决办法]
直接传过去就可以了,会作用于你的数组中的数据的
[解决办法]
http://blog.csdn.net/brave_heart_lxl/article/details/7395299
[解决办法]
直接把数组作为参数传进来就行,数组名是指针,所以子函数中的修改是有效的。如:

int main()
{
......
int arr[10] = {0};
foo(arr);
......
}

void foo(int *a)
{
......
}


[解决办法]
应该是传非const指针作为参数,传数组的话,函数内部会做一个copy动作,这样不会改变真正的内容
[解决办法]

引用:
//数组弱化为指针,搞不懂为什


为了效率,否则就需要值拷贝。


struct dummy
{
int values[1000];
};

void foo(int values[])
{
//do something with values
}

void foo(dummy d)
{
//do same thing with d.values
}

int goods[1000];
foo(goods);//a pointer/reference of good is passed
dummy antherGoods;
foo(antherGoods); //a copy of antherGoods is passed



[解决办法]
引用:
引用://数组弱化为指针,搞不懂为什

为了效率,否则就需要值拷贝。

C/C++ code?12345678910111213141516171819struct dummy{ int values[1000];}; void foo(int values[]){ //do something with values} ……

++
同样的 可以由c++的类!
[解决办法]
其实是为了效率。

读书人网 >C++

热点推荐