| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 523 人关注过本帖
标题:函数返回引用,不不返回引用有什么区别
只看楼主 加入收藏
karlzhouzhi
Rank: 1
等 级:新手上路
帖 子:70
专家分:0
注 册:2005-12-25
收藏
 问题点数:0 回复次数:1 
函数返回引用,不不返回引用有什么区别
函数返回引用是不是会产生一个临时变量暂时保存返回的值,这个含有该函数的表达式遇到分号结束时,就析抅这个临时变量。
请高手指点,我这个概念有点模糊?谢谢:)
搜索更多相关主题的帖子: 函数 
2006-03-28 00:09
踏魔狼
Rank: 6Rank: 6
等 级:贵宾
威 望:24
帖 子:1322
专家分:33
注 册:2005-9-22
收藏
得分:0 
说到引用就不能不说指针了.引用与指针非常容易混淆(我以前也被它弄的很头大).
假设ui是i的引用,则i就是被引用的对象,于是就有上面的程序片段.我们可以这样
理解,ui相当于i的别名,对于ui的任何操作,也就是对于i的操作.所以,ui即不是i的拷贝
也不是指向i的指针,其实ui就是i自己,是同一个实体两个名字.
引用的主要用处在于传递函数的参数和返回值.正因为ui是i自己,所以,用引用传递参
数,在名字上看不同,实际是同一个变量.比如对于某个函数的定义界面是这样的:
void func(int &ui)
而在程序中它被这样调用:
int i=123
func(i);
于是我们就知道,这个函数的参数,i就是ui,ui就是i.在函数内部,对于ui的任何操作
和变动,都相当于直接对i的操作和变动.
引用还有一些特殊的约定:
引用在被创建的同时,就应该初始化(而指针可以先创建,然后在需要的时候再赋值).
不能有NULL的引用,引用必须与合法的存储单元相联系(指针则可以有NULL).
一旦引用被初始化,就不能改变引用的关联,即引用是"从一而终"的.
如下面的示例:
int i=1;
int j=10000;
int &k=i;
int k=j;
i的结果会是多少?????????

=×&D o I p R e E n C g T l X&×=
2006-03-28 11:53
快速回复:函数返回引用,不不返回引用有什么区别
数据加载中...
 
   



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

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