C++ 运算符重载简单介绍

我们之前了解过函数的重载(详见C++函数(二))。它使得同名的函数可以接受不同的参数,实现不同的功能。而运算符重载和函数的重载很相似。也就是说,同样是运算符“+”,在不同的地方使用具有不同的功能。

还是举个例子来说:

(1) 如果操作数是两个数

int a = 1, b = 2;
cout << a+b << endl;

此时“+”的作用是将两个数相加起来。

(2) 如果操作数是两个字符串

string a = "I like ";
string b = "C++! ";
cout << a+b << endl;

此时“+”的作用是将两个字符串拼接起来。

如我们在上面看到的,“+”在不同的场景下实现了不同的功能,这就是运算符重载。

 

其实,使用一个运算符就是调用一个函数。比如“+”就相当于函数“operator+()”看下面的代码

#include <iostream>

using namespace std;

int main()
{
    string a = "I like ", b = "C++! ";
    cout << a + b << endl;
    cout << "----------------" << endl;
    cout << operator+(a, b) << endl;
    return 0;
}

运行结果:

C++ 运算符重载简单介绍

 可以看到,a+b与operator+(a, b)运行的结果是一样的。

因为“+”相比“operator+()”使用简单很多,所以我们平时只使用运算符“+”。

像“operator+()”这样的函数,我们叫做运算符函数。

那么运算符重载就好理解了,它本质上就是函数的重载。

 

原文链接: https://www.cnblogs.com/bwjblogs/p/12976384.html

欢迎关注

微信关注下方公众号,第一时间获取干货硬货;公众号内回复【pdf】免费获取数百本计算机经典书籍;

也有高质量的技术群,里面有嵌入式、搜广推等BAT大佬

    C++ 运算符重载简单介绍

原创文章受到原创版权保护。转载请注明出处:https://www.ccppcoding.com/archives/351291

非原创文章文中已经注明原地址,如有侵权,联系删除

关注公众号【高性能架构探索】,第一时间获取最新文章

转载文章受原作者版权保护。转载请注明原作者出处!

(0)
上一篇 2023年3月2日 上午6:47
下一篇 2023年3月2日 上午6:47

相关推荐