int fun(String& str)中&是啥意思,什么作用? int fun(String str)和上述表达有什么区别, 我感觉调用的时候都是str.xxx(),为什么参数表达式不一样?
2 回答
哔哔one
TA贡献1854条经验 获得超8个赞
int fun(String& str)中的&表示引用运算符。fun函数表示的是通过引用来进行实参于形参的传递。
引用就是某一变量(对象)的一个别名,对引用的操作与对变量直接操作完全一样。
1、引用的声明方法
类型标识符 &引用名=目标变量名;
举例如下:
12 | int a; int &ra=a; //定义引用ra,它是变量a的引用,即别名 |
2、引用的应用
1234567 | void swap( int &p1, int &p2) //此处函数的形参p1, p2都是引用 { int p; p=p1; p1=p2; p2=p; } |
为在程序中调用该函数,则相应的主调函数的调用点处,直接以变量作为实参进行调用即可,而不需要实参变量有任何的特殊要求。如:对应上面定义的swap函数,相应的主调函数可写为:
1234567 | void main( ) { int a,b; cin>>a>>b; //输入a,b两变量的值 swap(a,b); //直接以变量a和b作为实参调用swap函数 cout<<a<< ' ' <<b; //输出结果 } |
冉冉说
TA贡献1877条经验 获得超1个赞
int fun(String& str),参数是传递的String类对象的引用,可以直接改变传递进来的对象,和传递指针有类似之处,但是标准C并不支持此种参数传递方式。int fun(String str),是最普通的参数传递方式,不可以直接改变传递进来的对象。
添加回答
举报
0/150
提交
取消