006函数调用运算符重载--仿函数

    xiaoxiao2022-06-30  132

    /* 函数调用运算符 () 也可以重载 由于重载后使用的方式非常像函数的调用,因此称为仿函数 仿函数没有固定写法,非常灵活 */ #include<iostream> #include<string> using namespace std; class MyPrint { public: void operator()(string text) { cout << text << endl; } }; class MyAdd { public: int operator()(int val1, int val2) { return val1 + val2; } }; void playObject() { //重载()运算符,可以像函数一样调用,也不用使用.运算符 MyPrint myprint; myprint.operator()("计算机组成原理"); myprint("计算机操作系统"); MyAdd myadd; int sum = myadd.operator()(10, 20); cout << "sum=" << sum << endl; //可以当作匿名函数进行调用 cout << myadd(100, 200) << endl; } int main(void) { playObject(); system("pause"); return 0; }

     


    最新回复(0)