C++学习笔记(六)

运算符重载

需求:C++预定义的运算符,只能用于基本数据类型的运算,比如整型,实型,字符型,逻辑型。希望让对象也能通过运算符进行运算,比如希望对复数类的对象进行加减。

概念:对已有的运算符赋予多重的含义,使同一运算符作用于不同类型的数据时导致不同类型的行为。

目的:扩展运算符的适用范围,使之能作用于对象。

  • 同一个运算符,对不同类型的操作数,发生的行为不同

例子:complex_a+complex_b可以生成一个新的复数对象(加号经过重载),5+4=9,这两个式子的加号运算符的含义和作用不同。

  • 运算符重载的实质是函数重载

  • 既可以重载成普通函数,也可以重载为成员函数。

  • 含运算符的表达式->对运算符函数的调用

  • 运算符的操作数->运算符函数的参数

  • 被多次重载时,根据实参类型决定调用哪个运算符函数

格式

例子

C++学习笔记(六)_第1张图片

C++学习笔记(六)_第2张图片

你可能感兴趣的:(C++学习笔记(六))