引用和指针差不多, 作为函数参数是可以双向传递数据的, 比如你要在将一个变量作为形参来传递到函数内改变他的值 最终这个形参也要改变的话, 就必须要用引用, 因为如果用一般的参数, 参数的值是不会被改变的。。
你用引用的理解是正确的,对引用的操作实际上是对原变量的操作。另外一种不叫变量本身,应该说成是按值传递,比如
int func1(int x, int y)
{
这个函数里面的x和y是完全的新变量,只是在函数执行前,它的值和调用者一样罢了。
}
int func2(int &x, int &y)
{
这个函数里面的x和y,就是调用者的那两个变量。
}
为什么要用引用?大多数时候使用引用是为了拿到返回值,就如果上面的函数,一个函数的返回只能有一个值的,那万一你的函数要返回很多值怎么办?那就可以使用引用了。
这只是C++标准给你提供多种可能性而已,应当基于任务需要去选择。
传值,
传指针,
或传引用
不要钻牛角尖就行。
一般不想改变一个变量的值 在变量前加上const
引用可以改变变量的值,若不想在内部改变进行值传递。
引用的好处是不产生临时对象。
对于值传递和引用 具体情况具体分析了 。
一下子想不起例来