| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1128 人关注过本帖
标题:引用返回值的问题
只看楼主 加入收藏
lixang
Rank: 1
等 级:新手上路
帖 子:231
专家分:0
注 册:2006-7-15
收藏
 问题点数:0 回复次数:12 
引用返回值的问题

# include <iostream.h>

float temp;

float fn1(float r)
{
temp=(float)(r*r*3.14);
return temp;
}

float &fn2(float r)
{
temp=(float)(r*r*3.14);
return temp;
}

void main()
{
float a=fn1(10.0);
//float & b=fn1(10.0);
float c=fn2(10.0);
float &d=fn2(10.0);

cout<<"a="<<" "<<a<<endl;
//cout<<"b="<<" "<<b<<endl;
cout<<"c="<<" "<<c<<endl;
cout<<"d="<<" "<<d<<endl;
}
我不明白这里a,b,c,d如何操作,或被操作的?望大家给点点!

搜索更多相关主题的帖子: 返回值 
2006-08-30 22:17
yeshirow
Rank: 4
等 级:贵宾
威 望:10
帖 子:854
专家分:0
注 册:2006-6-8
收藏
得分:0 

紅色的是 引用了一個常數值

可以這樣:
const float &b = fn1(10.0);
b 是引用了一個 fnl 的返回值的常數


原來朋友仔感情再天真, 亦是我永遠也會愛惜的人, 明日愛他人, 也記住學會不要緊; 原來朋友比戀人更高分, 亦讓我開始懂得不記恨, 若大家都敏感, 我更要永遠記得拒絕再因小事怪人, 爲何沒有這條校訓...Twins-朋友仔 MCSD Training
2006-08-30 22:21
热情依然
Rank: 16Rank: 16Rank: 16Rank: 16
等 级:版主
威 望:22
帖 子:715
专家分:0
注 册:2005-4-5
收藏
得分:0 

应该这样说
b是一个引用,它引用了一个浮点型的常量,该常量是fn1的返回值


c++/C + 汇编 = 天下无敌
2006-08-30 22:28
lixang
Rank: 1
等 级:新手上路
帖 子:231
专家分:0
注 册:2006-7-15
收藏
得分:0 

但是//float & b=fn1(10.0);不能通过VC++编译器!那么是为什么?
是不是函数的返回值不能被引用?

2006-08-31 10:04
yeshirow
Rank: 4
等 级:贵宾
威 望:10
帖 子:854
专家分:0
注 册:2006-6-8
收藏
得分:0 

函式是返回了一個常數值啊
你這樣寫就相當於 float & b = 10.0f;
這樣不可以的


原來朋友仔感情再天真, 亦是我永遠也會愛惜的人, 明日愛他人, 也記住學會不要緊; 原來朋友比戀人更高分, 亦讓我開始懂得不記恨, 若大家都敏感, 我更要永遠記得拒絕再因小事怪人, 爲何沒有這條校訓...Twins-朋友仔 MCSD Training
2006-08-31 11:54
rilahust
Rank: 1
等 级:新手上路
帖 子:15
专家分:0
注 册:2006-7-6
收藏
得分:0 
把b定义为const引用就ok了
2006-08-31 17:00
心动音符
Rank: 1
等 级:禁止访问
威 望:1
帖 子:832
专家分:0
注 册:2005-9-15
收藏
得分:0 
yeshirow 女人编程也疯狂啊

2006-09-01 16:33
心动音符
Rank: 1
等 级:禁止访问
威 望:1
帖 子:832
专家分:0
注 册:2005-9-15
收藏
得分:0 
为什么 const就可以了

2006-09-01 16:37
热情依然
Rank: 16Rank: 16Rank: 16Rank: 16
等 级:版主
威 望:22
帖 子:715
专家分:0
注 册:2005-4-5
收藏
得分:0 

因为临时变量是常量,如果定义的引用是non const的,那么引用const变量是非法操作


c++/C + 汇编 = 天下无敌
2006-09-04 08:47
穆扬
Rank: 1
等 级:禁止发言
帖 子:1910
专家分:0
注 册:2006-6-1
收藏
得分:0 
提示: 作者被禁止或删除 内容自动屏蔽

2006-09-04 09:33
快速回复:引用返回值的问题
数据加载中...
 
   



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

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