标题:新手请教引用符号&的使用
只看楼主
evilsharp
Rank: 1
等 级:新手上路
帖 子:9
专家分:0
注 册:2010-7-4
结帖率:33.33%
已结贴  问题点数:20 回复次数:7 
新手请教引用符号&的使用
举个例子c++ primer 12.5友元中
1、书上写
class Screen{
friend Window_Mgr&
    Window_Mgr::relocate(Window_Mgr::index,Window::index,Screen&;
//……
}
请问为什么一定要用 Window_Mgre&,这么写不行吗?
class Screen{
friend Window_Mgr
    Window_Mgr::relocate(Window_Mgr::index,Window::index,Screen&;
//……
}
这里有什么特殊意义吗?友元申明为什么要声明类的引用?


2、还有像这种声明
extern std::ostream& storeOn(std:ostream &,Screen &)
为什么要声明引用,有什么实际意义吗?

3、最后函数形参的声明
void s(iostream& a){……} 等价于 void s(iostream &a){……}吗?

感觉C++书写没有规范的格式
搜索更多相关主题的帖子: 符号 
2010-07-04 16:50
evilsharp
Rank: 1
等 级:新手上路
帖 子:9
专家分:0
注 册:2010-7-4
得分:0 
前两个明白了,请高手帮我确认第三个问题吧
2010-07-04 16:57
pbreak
Rank: 7Rank: 7Rank: 7
等 级:黑侠
威 望:1
帖 子:83
专家分:558
注 册:2007-5-10
得分:0 
下面是我的理解:
&引用可作为一个变量的一个别名。
对别名进行的改变,从而改变了原变量。
这里采用引用时为了在函数体中对实参做的改变能对函数体外传入的变量的改变。
2010-07-04 17:02
最近不在
Rank: 8Rank: 8
等 级:蝙蝠侠
威 望:5
帖 子:204
专家分:842
注 册:2010-2-28
得分:10 
*或&紧贴数据类型,或变量名都是可以的
2010-07-04 19:07
jkgr15
Rank: 1
等 级:新手上路
帖 子:5
专家分:1
注 册:2010-6-23
得分:0 
引用是为了让速度更快一些。
如果返回的是值的话需要创建一个副本,而返回引用只需要给他其一个别名节省了时间和空间,提高了函数的效率。
2010-07-04 22:28
wsh1991
Rank: 2
等 级:论坛游民
帖 子:31
专家分:30
注 册:2010-6-5
得分:10 
一样的,引用符紧贴参数或紧贴类型都是一样的
2010-07-05 11:25
evilsharp
Rank: 1
等 级:新手上路
帖 子:9
专家分:0
注 册:2010-7-4
得分:0 
明白了,谢谢。
第一次发帖,这里还是挺有人气的。
2010-07-05 20:46
南国利剑
Rank: 12Rank: 12Rank: 12
等 级:贵宾
威 望:29
帖 子:1165
专家分:3536
注 册:2010-4-12
得分:0 
呵呵,路过

南国利剑
2010-07-06 02:06



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




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

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