注册 登录
编程论坛 C++教室

友元的问题

bclee 发布于 2008-01-25 20:53, 726 次点击
只有本站会员才能查看附件,请 登录

已知class window_Mgr 在前面定义了 那么图中 friend window_Mgr& 是什么?

友元类与授予友元关系的那个类之间的访问权限是不是一样?就是友元类可以访问授予友元关系的那个类的所有成员,授予友元关系的那个类也可以访问友元类的所有成员?
5 回复
#2
中学者2008-01-25 21:12
把Window_Mgr类的函数relocate声明为Screen类的友元函数,并返回Window_Mgr类的引用
#3
bclee2008-01-25 21:19
谢谢 原来是同一行的,

友元类与授予友元关系的那个类之间的访问权限是不是一样?就是友元类可以访问授予友元关系的那个类的所有成员,授予友元关系的那个类也可以访问友元类的所有成员?
#4
中学者2008-01-25 22:21
友元类可以访问授予友元关系类的所有成员,但授予友元关系类不能访问友元类的所有成员
#5
bclee2008-01-25 22:36
原帖由 [bold][underline]中学者[/underline][/bold] 于 2008-1-25 22:21 发表 [url=http://bbs.bccn.net/redirect.php?goto=findpost&pid=1188097&ptid=198759][/url]
友元类可以访问授予友元关系类的所有成员,但授予友元关系类不能访问友元类的所有成员



授予友元关系类怎么访问友元类的成员?
#6
中学者2008-01-25 22:41
只能访问public成员..........否则互相声明为friend...但是这种情况没遇过..........而且也建议不用friend,,因为它破坏了class的访问权限........只有必要的时候才用,例如操作符重载...二元操作符建议以非成员函数的形式重载,这个时候只有声明为friend才能访问class...
1