首页 > 代码库 > 友元关系
友元关系
在封装中C++类数据成员大多情况是private属性;可是假设接口採用多參数实现肯定影响程序效率。然而这时候假设外界须要频繁訪问这些私有成员,就不得不须要一个既安全又理想的“后门”——友元关系;
C++中提供三种友元关系的实现方式,友元函数、友元成员函数、友元类。
友元函数:既将一个普通的函数在一个类中说明为一个friend属性。其定义(大多数会訪问该类的成员)应在类后;
友元成员函数:既然是成员函数,那么肯定这个函数属于某个类,对了就是由于这个函数是另外一个类的成员函数。有时候由于我们想用一个类通过一个接口去訪问另外一个类的信息,然而这个信息仅仅能是被它授权的类才干訪问;那么也须要用friend去实现。这个概念仅仅是在声明的时候稍有变化。
友元类:友元类声明会将整个类说明成为还有一个类的友元关系;和之前两种的差别是集体和个人的差别。友元类的全部成员函数都能够是还有一个类的友元函数;
值得注意的是友元关系是单向的,有点像我们恋爱中出现的单相思 O(∩_∩)O,单向关系就是说假设A被说明成B的友元关系,那么仅仅能说A是B的友元。并不代表B是A的友元;其次在多数情况下友元关系的函数都会訪问它被说明中类的成员,这时候应该将函数定义在类的后面;
友元关系
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。