友元的作用

来源:互联网 发布:大数据科学研究方向 编辑:程序博客网 时间:2024/04/19 06:39
1.友元的作用是什么? 友元提供了在不同类的成员函数之间、类的成员函数与一般函数之间进行数据共享的机制。通过友元,一个普通函数或另一个类中的成员函数可以访问类中的私有成员和保护成员。C++中的友元为封装隐藏这堵不透明的墙开了一个小孔,外界可以通过这个小孔窥视内部的秘密。 友元的正确使用能提高程序的运行效率,但破坏了类的封装性和数据的隐蔽性,导致程序可维护性变差,因此一定要谨慎使用。 作为一种编程技术手段,友元为程序员提供了一种面向对象程序和面向过程程序相互衔接的接口。从根本上说面向对象的分析与设计方法并不能彻底解决现实世界中的一切需求。许多按照对象化设计的软件系统常常保留一些供早期程序访问的接口,来扩大自身功能,提高自己产品的竞争能力。友元较为实际的应用是第6章讲到的运算符重载,从而提高软件系统的灵活性。 2. 友元概念的引入虽然方便了类之间的数据共享,但是否削弱了对象的封装性? C++中的友元为封装隐藏这堵不透明的墙开了一个小孔,外界可以通过这个小孔窥视内部的秘密。友元的正确使用能提高程序的运行效率,但破坏了类的封装性和数据的隐蔽性,导致程序可维护性变差,因此一定要谨慎使用。