C++ STL之函数对象/函数符(C++ primer,P707)

主要内容:

  • 函数符的概念
  • 预定义的函数符

函数符的概念

函数符是可以以函数的方式与 () 结合使用的任意对象(此处对象不仅指类对象);

函数名、指针、重载了 () 运算符的类对象都是函数符;

函数符概念:

  • 生成器:不用参数即可调用的函数符;
  • 一元函数:用一个参数就能调用的函数符;
  • 二元函数:用两个参数可以调用的函数符;
  • 谓词:返回 bool 值的一元函数;
  • 二元谓词:返回 bool 值的二元函数;

两个参数的函数可以被转换成单参数的函数对象(P710);

bool func(const int & val, const int & lim)
{
	return val > lim;
}
	
class A {
private:
	int x;
public:
	A(const int & t) : x(t) {}
	bool operator()(const int & v) { return func(v, x); }
}

A a(100);
int b;
cin >> b;
if ( a(b) )		//	等价于	func(b, 100);
	...

预定义的函数符

头文件 < functional > , P711

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值