c++STL之函数对象(仿函数)

c++STL之函数对象(仿函数),第1张

概述概念: 重载函数调用 *** 作符的类, 其对象被称为函数对象; 函数对象使用重载的()时,行为类似函数调用,也叫仿函数; 本质:函数对象是一个类,不是一个函数; 函数对象使用: - 函数对象在使用时,可以像

概念:

重载函数调用 *** 作符的类, 其对象被称为函数对象;函数对象使用重载的()时,行为类似函数调用,也叫仿函数;

本质:函数对象是一个类,不是一个函数;

函数对象使用:

- 函数对象在使用时,可以像普通函数那样调用,可以有参数,可以有返回值
- 函数对象超出普通函数的概念,函数对象可以有自己的状态
- 函数对象可以作为参数传递

#include<iostream>using namespace std;#include <string>class MyAdd{public:    int operator()(int v1,int v2)    {        return v1 + v2;    }};// 1、函数对象在使用时,可以像普通函数那样调用,可以有参数,可以有返回值voID test01(){    MyAdd myAdd;    cout <<  myAdd(10,10) <<endl;}2、函数对象超出普通函数的概念,函数对象可以有自己的状态 MyPrint{:    MyPrint()    {        this->count = 0;    }    voID string test) const    {        cout << test << endl;        this->count++;    }    int count;  内部自己状态}; test02(){    MyPrint myPrint;    myPrint("hello world");    myPrint();    cout << myPrint调用次数为: " << myPrint.count << endl;}3、函数对象可以作为参数传递voID doPrint(MyPrint & mp,1)"> test){    mp(test);} test03(){    MyPrint myPrint;    doPrint(myPrint,Hello c++);} main() {    test01();    test02();    test03();    system(pause);    return ;}
总结

以上是内存溢出为你收集整理的c++STL之函数对象(仿函数)全部内容,希望文章能够帮你解决c++STL之函数对象(仿函数)所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/langs/1159639.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-06-01
下一篇 2022-06-01

发表评论

登录后才能评论

评论列表(0条)

保存