跟我一起学C++之按引用传递

来源:互联网 发布:uml画图软件 编辑:程序博客网 时间:2024/06/07 19:31

按引用传递

1.引用传递方式是在函数定义时在形参前面加上引用运算符"&"

例如:swap(int &a,int &b);

2.按值传递方式容易理解,但形参值的改变不能对实参产生影响

3.地址传递方式通过形参的改变使相应的实参改变,但程序容易产生错误且难以阅读

4.引用作为参数对形参的任何操作都能改变相应的实参的数据,又使函数调用显得方便、自然


#include <iostream>using namespace std;void swap(int &x, int &y);int main(){int a, b;a = 10;b = 20;swap(a, b);cout<<"a="<<a<<"b="<<b<<endl;return 0;}void swap(int &x, int &y){int temp;temp = x;x = y;y = temp;}

程序运行过程中参数值的变化图示



注意:引用作参数时,函数的实参与形参在内存中共用存储单元,因此形参的变化会使实参同时变化。

 

代码实例:

#include<iostream>usingnamespace std; // 引用作为参数传递 void swap(int& x, int& y){         int temp = x;         x = y;         y = temp;} int main(void){         int a = 5;         int b = 6;          swap(a, b);                 // 在函数调用时,引用被初始化 x = a, y = b;          cout<<"a="<<a<<" b="<<b<<endl;         return 0;} 运行结果:



0 0
原创粉丝点击