想问下运算符重载主要是用来干嘛,因为在没学这个之前,自增自减,加,什么的都是可以直接用的啊,请教大神
想问下运算符重载主要是用来干嘛,因为在没学这个之前,自增自减,加,什么的都是可以直接用的啊,请教大神
想问下运算符重载主要是用来干嘛,因为在没学这个之前,自增自减,加,什么的都是可以直接用的啊,请教大神
2017-11-02
有两个很好的作用:
一个作用是改变运算符的本来运算方式,比如我定义一个类有两个数据成员m_iX和m_iY,把一个运算符重载函数名写成Coor& operator++()的形式,但是在定义函数的时候却定义成m_iX和m_iY自减即{--m_iX;--m_iY},那么我实例化一个Coor的对象c(2,2),并在主函数中做++c时,实际运行的却是c中的所有数据成员自减,结果等于(1,1),所以运算符重载相当于把运算符重新定义。
另一个是把对象直接作为一个数据可以反馈出来,简化了很多调用的步骤。小编例子中的类是成员数据比较少的,遇到数据成员较多的类,直接将对象相加或相减绝对比分别调用所有的数据成员相加相减要写的代码少。
举报