c++之引用和指针

c语言中函数的参数传递

   按值传递,如果值传递数据很大,复制数据会花费很长的时间。所以使用指针传递比较好。

c++中函数的参数传递

 按值传递,

引用传递,避免大量数据的开销,可以提高性能。引用是变量的别名,使用必须初始化。

&符号只有在声明引用的时候是引用操作符,其他是地址操作符。

引用一旦初始化,它就维系在一定的目标上,再也不分开

引用和指针的差别:

指针是一个变量,可以再赋值指向别处的地址

建立引用的时候必须进行初始化,并且不能再关联其他不同的变量

指针是一个变量,所以指针也可以引用

void &a;是不合法的

引用数组是不行的。

使用引用之后,原来的变量会被改变

比如 void  zoo(int & b)

{

   b=10;

}

int main(){

int a=0;

zoo(a);

cout<<a<<endl;

}

输出结果就是 10 ;而如果把&去掉,输出就是0;这就是引用。

使用引用的地方:

函数智能返回一个值,如果我们需要返回多个值,就是用引用传递,引用不产生副本,提高了程序的运行效率。也可以使用指针。不过在函数返回一个局部变量的引用,是不对的。

原文地址:https://www.cnblogs.com/jfyl1573/p/6481822.html