C++友元类和友元函数的概念和使用

C++编程中如果需要访问非本类的私有成员,那么就需要用到友元。否则私有成员是无法被外部直接访问的,而友元可以被定义为友元函数和友元类,即指定某函数或类直接访问私有类。则具体形式如下:

操作方法

  • 01

    C++编程中如果需要访问非本类的私有成员,那么就需要用到友元。否则私有成员是无法被外部直接访问的,而友元可以被定义为友元函数和友元类,即指定某函数或类直接访问私有类。则具体形式如下: class 类名{public:    friend class 友元类名;    friend 类型 友元函数名;} 这样定义后友元类和友元函数就可以直接访问该类的私有函数,需要注意的是友元仅为单向,即B是A的友元,但A是不能访问B的私有变量,友元也不可在子类被继承。

  • 02

    例子中友元函数直接操作类的私有变量a、b完成相加。友元函数或友元类一般使用在需要频繁操作某类的私有变量或者对计算效率要求较高的情况下,有时时一些重载操作符也可以使用友元来完成。

(0)

相关推荐

  • c++指针调用类的成员函数的三种方法

    操作方法 01 如何用指针调用类的成员函数?可以考虑以下方法: (1) 将需要调用的成员函数设为static 类型,如:在前述例子2中,将class Test2 成员函数Compare 定义前加上st ...

  • C/C++ 函数的概念及使用

    C/C++函数是为了实现某些功能的的代码模块,目的是为了可以重复调用这些功能,函数本身可以带入不同的参数进行运算.定义函数的方法如下: 操作方法 01 C/C++函数是为了实现某些功能的的代码模块,目 ...

  • 【C++程序设计实验】类的定义和使用

    【C++程序设计实验】类的定义和使用

  • Python编程中class类的定义、使用和继承

    Python编程中class类的定义.使用和继承 操作方法 01 Python和其它的编程语言一样可以使用类来开发程序,类的概念简单来说某种类型集合的描述,如"人类"可以被看作一个 ...

  • C++ 中函数重载.覆盖与隐藏

    C++ 中函数重载.覆盖与隐藏详解 在C++语言中,函数扮演着很重要的角色,不管面向过程设计,还是基于对象设计:不管是面向对象编程,还是基于泛型编程,函数都可以随处而见.在谈论C++中的函数重载.覆盖 ...

  • APP概念设计前后那些事儿(扩充作品集)

    学UI网老虎帮的五月妹子:"很多新手UI设计师缺少项目,而想要尝试App概念设计来进行练习或是筹备作品集时,常会有点无从下手的感觉.本篇文章想要通过自己的设计经历和大家分享一些设计思路和,阐 ...

  • Excel YEARFRAC函数的使用方法

    YEAR函数用来抽取指定日期中年份的函数,在Excel中有一个比较类似的YEARFRAC函数.这个函数在我们日常的学习生活中作用非常大,那么这个函数怎么使用?它又能给我们带来多大的便利呢?请和我一起学 ...

  • EXCEL字母大小写转换函数UPPER,LOWER,PROPER

    在EXCEL表格数据处理中,有时会需要将一些字母的大小写转换一下,变成我们需要的格式,幸好EXCEL自带有这类的处理函数,如全部转换到大写的UPPER函数,全部转换成小写的LOWER函数,和首字母大写 ...

  • Excel中的组合函数IF(or())函数如何运用?

    在Excel中学会组合函数if(or())函数,根据条件非常容易得出结果,or是" 或"的意思,所以组合函数中条件满足一个就算复合条件了,那么如何运用呢?下面我会用例子说明,就能更 ...