C ++中的运算符重载及其规则

运算符重载是面向对象编程语言的重要组成部分。运算符重载是静态或编译时多态的一种

通过使用运算符重载的概念,我们可以将额外的任务分配给现有的运算符。

例如,我们可以将多个任务分配给+运算符:

  1. +运算符用于加两个数字。

  2. +运算符还用于连接两个字符串。

运算符重载的基本目的是为程序员提供便利,以最自然的形式编写表达式。

以下是运算符重载的以下规则:

  1. 运算符重载的第一条基本规则是:我们可以将一元运算符作为唯一的一元运算符进行重载,而不能作为二元运算符进行重载,反之亦然。

  2. 我们不能重载那些不属于C ++语言的运算符,例如'$'。

  3. 我们只能在用户定义的类中执行运算符重载。我们无法更改运算符的现有功能。

  4. 使用运算符重载,我们无法更改运算符的主席职位和相关权限。

  5. 下面列出了一些不能重载的运算符:

    • ::范围解析运算符。

    • 。类成员运算符。

    • ?:三元或条件运算符。

    • 。*指向成员运算符的指针。

    • -> *指向成员运算符的指针。

运算符重载可以通过两种方式完成:

  1. 成员函数的运算符重载

  2. 非成员或自由函数的运算符重载