C++ 运算符重载之把类对象当着函数名使用

简要

首先,这篇博客名听起来有点摸不着头脑,看完效果之后,更会觉得C++的博大精深,要学的东西也太多。

运行效果

C++ 运算符重载之把类对象当着函数名使用_第1张图片

例子代码

#include <QCoreApplication>
#include <iostream>
using namespace std;

class Pow
{
public:
    int operator()(int param)
    {
        return param * param;
    }
};

int main(int argc, char *argv[])
{
    QCoreApplication a(argc, argv);

    Pow pow;

    cout << "the result is: " << pow(5) << endl;
    return a.exec();
}

部分解析

通过简单的几行代码,来实现把类对象当着函数名的使用。
其实调用pow(5) 时,就是调用了, pow.operator()(5) ,这是的运算符重载 为Pow的成员函数。 它可以看作pow()5, 而实际运用中系统自动做了一些处理, 所以可以直接使用pow(5), 并得到正确的值。

而讲到运算符重载,可以联想到两种:
1是友员函数进行重载。
2是成员函数进行重载。
3.单目,双目的不同操作。

你可能感兴趣的:(运算符重载)