C++ 重载函数调用运算符 ()

返回上一级

C++ 允许重载函数调用运算符 ()

重载 (),不是创造了一种新的调用函数的方式,而是创建一个可以传递任意个参数的运算符函数

其实就是创建一个可调用的对象

我们写一个实例,看看重载函数调用运算符 () 的妙用

/**
 * file: main.cpp
 * author: 简单教程(www.twle.cn)
 *
 * Copyright © 2015-2065 www.twle.cn. All rights reserved.
 */

#include <iostream>

class Rect
{
private:

    int width;
    int height;

public:

    Rect() {
        width  = 0;
        height = 0;
    }


    Rect(int a ,int b ) {
        width  = a;
        height = b;
    }

    void operator()() {
        std::cout << "area of me is:" << width * height << "\n";
    }
};

int main()
{
    Rect r1(3,4), r2(6,8);

    std::cout << "r1: "; 
    r1();

    std::cout << "r2: ";
    r2();
   return 0;
}

编译和运行以上范例,输出结果如下

r1: area of me is:12
r2: area of me is:48

返回上一级

C++ 基础教程

关于   |   FAQ   |   我们的愿景   |   广告投放   |  博客

  简单教程,简单编程 - IT 入门首选站

Copyright © 2013-2022 简单教程 twle.cn All Rights Reserved.