首页 > 其他 > 详细

友元、运算符重载’

时间:2020-06-30 23:04:03      阅读:73      评论:0      收藏:0      [点我收藏+]

锻炼类内声明,类外实现的写法---使用作用域符号::

1)友元--friend--让一个函数或类访问另一个类中私有成员

    1)全局函数做友元

      在类中用friend声明全局函数是友元即可

    2)类做友元

      在类中用friend声明类是友元即可

    3)类中成员函数做友元

      在类中用friend声明类中成员函数是友元即可

2)运算符重载--对已有的运算符重新进行定义,赋予其另一种功能,以适用不同的自定义数据类型---operator运算符

    1)加号运算符重载--实现自定义数据类型相加运算

        成员函数--本质:类名 p3 = p1.operator+(p2)

        全局函数重载--本质:类名 p3 = operator+(p1,p2)

        运算符重载也可以发生函数重载

        内置数据类型不能改变运算方式

    2)左移运算符重载

        1)不会利用成员函数来重载<<运算符---因为无法实现cout在左侧

        2)只能利用全局函数来重载<<运算符

            -----cout输出流(ostream)对象--返回为输出流对象的引用(链式编程)

            -----

              ostream& operator<< (ostream &cout, Person &p)

            {

              cout << " m_A = " << p.m_A << "m_B" <<p.m_B;

              return cout;

            } 

    3)递增运算符重载

        

    4)赋值运算符重载

    5)关系运算符重载

    6)函数调用运算符重载 

友元、运算符重载’

原文:https://www.cnblogs.com/MissZhang-154/p/13216401.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!