仿函数示例
2023-12-24 13:32:18
仿函数的通俗解释,就是使用起来像函数一样的东西。
如果针对某个class进行operator()重载,它就成为了一个仿函数。
#include <iostream>
using namespace std;
//plusElement成为了一个仿函数
template <class T>
struct plusElement {
T operator()(const T& x, const T& y) const { return x + y; }
};
//同理,minusELement也成为了一个仿函数
template <class T>
struct minusElement {
T operator()(const T& x, const T& y) const { return x - y; }
};
int main()
{
//产生仿函数对象
plusElement<int> plusObj;
minusElement<int> minusObj;
//使用仿函数,就像使用普通函数一样
cout << plusObj(3, 5) << endl;
cout << minusObj(3, 5) << endl;
//以下直接产生仿函数的临时对象(第一个括号),并调用之(第二个括号)
cout << plusElement<int>()(40, 10) << endl;
cout << minusELement<int>()(40, 10) << endl;
return 0;
}
运行结果:
文章来源:https://blog.csdn.net/Jaster_wisdom/article/details/135179848
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。 如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:veading@qq.com进行投诉反馈,一经查实,立即删除!
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。 如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:veading@qq.com进行投诉反馈,一经查实,立即删除!