跟我一起学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
- 跟我一起学C++之按引用传递
- 跟我一起学C++之从C到C++引用
- 跟我一起学C++之const引用
- 跟我一起学C++之引用作为返回值
- 跟我一起学C++之引用与指针区别
- 《跟我一起学C++》
- 跟我一起学C++(第一季)
- 跟我一起学C语言
- 跟我一起学C++之重载
- 跟我一起学C++之从C到C++(bool类型)
- 跟我一起学C++之从C到C++(const限定符)
- 跟我一起学C++之从C到C++(const与#define)
- 跟我一起学C++之从C到C++(结构体内存对齐)
- 跟我一起学C++之name managling与extern “C”
- 跟我一起学java
- 跟我一起学摄影
- 跟我一起学makefile
- 跟我一起学Makefile
- 删除cookie
- ssoj2868(最大不相交区间)
- 20161019
- 话说C语言const用法
- 20161020
- 跟我一起学C++之按引用传递
- 移动端 解决点击按钮闪和active失效的问题
- Linux下汉字编码方式UTF-8,Windows下面是GB2312
- hdu1074(状压)
- 15级算法第三次上机解题报告
- 安卓自定义View基础-坐标系
- 顺序表实例2
- 单链表实例1
- 分离颜色通道(split)和多通道融合(merge)