标题:大家能帮我看一下只有4行代码的函数吗?
只看楼主
想你的天空
Rank: 2
等 级:新手上路
威 望:5
帖 子:610
专家分:0
注 册:2004-12-30
 问题点数:0 回复次数:4 
大家能帮我看一下只有4行代码的函数吗?
这个函数算不算是返回引用的函数? ?

const int &return_ref(int *p)  //加const是禁止改变函数的返回值
{   
    *p +=2;
 return *p;
}//当函数返回一个引用,调用函数接收左值
搜索更多相关主题的帖子: 函数 代码 int const return 
2005-08-23 11:17
poppylx
Rank: 1
等 级:新手上路
帖 子:367
专家分:0
注 册:2004-9-27
得分:0 
return p;
就够了吧

动于心而静如水
2005-08-23 21:13
kai
Rank: 16Rank: 16Rank: 16Rank: 16
等 级:版主
威 望:52
帖 子:3450
专家分:59
注 册:2004-4-25
得分:0 
想你的天空, 不对,这不是返回一个引用,因为p在参数表中为一个指针,也就说该函数的输入值为一个变量的地址,在该函数块中该输入变量参与运算,但是返回的是该变量的值,而非该变量本身。 如果你真的要返回一个引用,那么该函数应该写成下面这样: const int &return_ref(int & p) { p +=2; return p; } 或者这样的形式: const int * return_ref(int *p) //加const是禁止改变函数的返回值 { *p +=2; return p; }

自由,民主,平等,博爱,进步.
中华民国,我的祖国,中华民国万岁!中华民国加油!
本人自愿加入中国国民党,为人的自由性,独立性和平等性而奋斗!
2005-08-24 12:03
想你的天空
Rank: 2
等 级:新手上路
威 望:5
帖 子:610
专家分:0
注 册:2004-12-30
得分:0 
谢谢KAI

2005-08-25 13:36
ltn
Rank: 1
等 级:新手上路
帖 子:37
专家分:0
注 册:2005-9-3
得分:0 
KAI是对的
2005-09-03 13:45



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-25844-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.908623 second(s), 8 queries.
Copyright©2004-2025, BCCN.NET, All Rights Reserved