博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
【C++】reference parameter-引用参数
阅读量:4356 次
发布时间:2019-06-07

本文共 817 字,大约阅读时间需要 2 分钟。

1.reference parameter

以下两个函数等效,只调用方式不同:

1>

1 int reset(int i){ 2     i = 13; 3     return i; 4 } 5  6 int main () 7 { 8 int j=0; 9 j = reset(j); 10 cout<
<

2>

1 void reset(int &i){ 2     i = 13; 3 } 4  5 int main () 6 { 7     int j; 8  reset(j); 9 cout<
<

函数区别,第一个必须要有返回值,第二个则不必.

调用时区别在第9行.

void reset()函数中引用参数 i 只是变量 j 的另一个名称,本质上就是变量 j ,不需要返回值,更改 i 的内容即等效于更改 j 的内容.

 

 

2.借引用参数实现一个函数返回多个结果

众所周知,一个函数只能有一个返回值。

但是借由reference parameter,可以实现返回多个结果的效果。

1 //找出字符第一次出现位置pos,并得出共出现的次数occurs 2  3 #include 
4 5 using namespace std; 6 7 string::size_type find_char(const string &s, char c, string::size_type &occurs){ 8 auto ret = s.size(); 9 occurs = 0;10 for(decltype(ret) i = 0; i

输出

73

其中occurs就是作为被引用参数,在调用函数时其值被更改。

 

转载于:https://www.cnblogs.com/liez/p/5481378.html

你可能感兴趣的文章
windows 下安装Apache
查看>>
Fedora14 mount出现错误时解决办法【亲测有效】
查看>>
使用Visual Studio 2013进行UI自动化测试
查看>>
13-集体照
查看>>
读了曾国藩家书,,心态逐渐平和起来。搞技术的如果缺乏信念的指引,生活会很乏味无聊!...
查看>>
160809308周子济第六次作业
查看>>
sublime text3最新版本注册码(build 3143)
查看>>
linux使用技巧
查看>>
必背公式及常数
查看>>
利用CSS、JavaScript及Ajax实现图片预加载的三大方法
查看>>
js时间戳转时间格式
查看>>
Nginx配置文件nginx.conf中文详解(总结)
查看>>
Linux的用户态和内核态
查看>>
JavaScript原生错误及检测
查看>>
(原创) cocos2d-x 3.0+ lua 学习和工作(4) : 公共函数(3): 深度克隆clone()
查看>>
为什么写作
查看>>
整数子数组求最大和添加验证
查看>>
使用kubeadm安装Kubernetes
查看>>
Principal Component Analysis 主元分析
查看>>
linux分割字符串操作
查看>>