C++中引用做为形参的作用是什么?就是普通的不行吗?
就比如重载<<的时候,为什么一定要OFTREAM&OUTPUT一定要用形参的啊?还有一些别的类型的形参的引用和普通的形参的什么不同?反正我不习惯去用这个啦!!...
就比如 重载<<的时候,为什么一定要OFTREAM &OUTPUT 一定要用形参的啊?
还有一些别的类型的形参的引用和普通的形参的什么不同?
反正我不习惯去用这个啦!! 展开
还有一些别的类型的形参的引用和普通的形参的什么不同?
反正我不习惯去用这个啦!! 展开
7个回答
展开全部
首先要明白 引用就是某一变量(目标)的一个别名,对引用的操作与对变量直接操作完全一样。相当于目标变量名有两个名称,即该目标原名称和引用名,且不能再把该引用名作为其他变量名的别名。
当引用作为参数传入后,函数中对参数的操作,也会影响到传入变量
而且其他普通的是不会对传入的变量有任何影响,举例
int a;
int &ra=a; //定义引用ra,它是变量a的引用,即别名
ra=1; 等价于 a=1;
void SetVariant(int &xx)
{
xx = 100;
}
main()
{
int a = 1;
SetVariant(a);
cout<<a; //输出结果
}
最后输出的a是100,而不是1了
当引用作为参数传入后,函数中对参数的操作,也会影响到传入变量
而且其他普通的是不会对传入的变量有任何影响,举例
int a;
int &ra=a; //定义引用ra,它是变量a的引用,即别名
ra=1; 等价于 a=1;
void SetVariant(int &xx)
{
xx = 100;
}
main()
{
int a = 1;
SetVariant(a);
cout<<a; //输出结果
}
最后输出的a是100,而不是1了
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
引用可以看成是被引用对象的另一个名字,他不格外占用空间。效率高,却和原对象有相同的效果。传引用比传指针(你需要为指针分配空间)或原对象(你需要重新定义分配对象)不知高多少倍,效果却和指针的一样(传的也是地址)
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
可以修改你传进去的东西,虽然指针也可以,但是由于C的指针存在太多的问题,所以C++引入了引用这样的东西
在初学到c++的时候,你应该向十字军一样勇猛的使用引用,然后再去慢慢体会何时该使用!
在初学到c++的时候,你应该向十字军一样勇猛的使用引用,然后再去慢慢体会何时该使用!
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
2008-11-06
展开全部
简单说,引用或指针传的形参可以在一句代码中多次调用..
而普通的只能调用一次..
而普通的只能调用一次..
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询