友元函数有什么作用?

 我来答
12917736427c66b6
推荐于2017-10-01 · TA获得超过4.1万个赞
知道大有可为答主
回答量:7541
采纳率:83%
帮助的人:619万
展开全部
friend 友元函数,是C++ class类类型机制中一种比较被人诟病的元素,作为一个类的友元函数,这个函数可以对这个类的私有成员函数进行访问,但是值得注意的是,这个访问是单向的,即友元函数可以访问类的数据,而不可逆,相对来说,友元函数尽量减少使用。
普通函数 在类里加上friend声明成类的友元以后 就可以使用类的成员变量,不然成员变量一般式封装在类里的。外面函数是无法使用的。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
wangyun267
2015-09-19 · 知道合伙人历史行家
wangyun267
知道合伙人历史行家
采纳数:4290 获赞数:91646
毕业于南京工业学院,读过很多历史相关书籍。

向TA提问 私信TA
展开全部
友元函数是指某些虽然不是类成员却能够访问类的所有成员的函数。类授予它的友元特别的访问权。通常同一个开发者会出于技术和非技术的原因,控制类的友元和成员函数(否则当你想更新你的类时,还要征得其它部分的拥有者的同意)。
1)必须在类的说明中说明友元函数,说明时以关键字friend开头,后跟友元函数的函数原型,友元函数的说明可以出现在类的任何地方,包括在private和public部分;
2)注意友元函数不是类的成员函数,所以友元函数的实现和普通函数一样,在实现时不用"::"指示属于哪个类,只有成员函数才使用"::"作用域符号;
3)友元函数不能直接访问类的成员,只能访问对象成员,
4)友元函数可以访问对象的私有成员,但普通函数不行;
5)调用友元函数时,在实际参数中需要指出要访问的对象,
6)类与类之间的友元关系不能继承。
7)一个类的成员函数也可以作为另一个类的友元,但必须先定义这个类。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式