c/c++语言开发共享友元类的定义和用法

1.概述 ①友元:是定义一个类是,该主动声明哪些其他类或函数是它的朋友,进而给他们定向提供对类的访问特权。 ②友元是C++提供的一种破坏数据封装和数据隐藏的机制。 ③通过友元将一个模块声明为另一个模块的友元,一个模块能够引用到另一个模块中本是被隐藏的信息。 ④可以使用友元函数和友元类。 建议:为了确 …

1.概述
①友元:是定义一个类是,该主动声明哪些其他类或函数是它的朋友,进而给他们定向提供对类的访问特权。
②友元是c++提供的一种破坏数据封装和数据隐藏的机制。
③通过友元将一个模块声明为另一个模块的友元,一个模块能够引用到另一个模块中本是被隐藏的信息。
④可以使用友元函数和友元类。

建议:为了确保数据完整性,及数据封装与隐藏原则,建议尽量不使用或少使用。

2、友元函数

①友元函数是在类的声明中由关键字friend修饰说明的非成员函数,在它的函数体中能通过对象名访问 private和protected 成员。

②作用:增加灵活性,使程序员可以在封装和快速性方面做合理选择。

③访问对象中的成员必须通过对象名。

④友元是单向的。

友元函数的定义方法(以定义一个point类为例)
友元类的定义和用法

(该函数传入引用,节约工耗)

友元类的定义和用法

此时,就会遇到在函数中改变对象私有信息的危险,破坏数据的封装。
例如:
友元类的定义和用法

输出:友元类的定义和用法

对比原先的输出:友元类的定义和用法

如果想防止对象的私有数据被更改 , 可以在传入引用时 加 const修饰 例如:友元类的定义和用法

这样 在函数中再想更改对象的私有数据时就会报错,例如:
友元类的定义和用法

至于const的用法 相信大家都见过了,在后面的博客中会加以补充。

本文来自网络收集,不代表计算机技术网立场,如涉及侵权请联系管理员删除。

ctvol管理联系方式QQ:251552304

本文章地址:https://www.ctvol.com/c-cdevelopment/601785.html

(0)
上一篇 2021年5月11日
下一篇 2021年5月11日

精彩推荐