您当前的位置: 首页 >  c++

85 C++ - 函数对象适配器

杨林伟 发布时间:2019-10-09 16:33:32 ,浏览量:3

函数适配器bind1st bind2nd

现在我有这个需求 在遍历容器的时候,我希望将容器中的值全部加上100之后显示出来,怎么做?

我们直接给函数对象绑定参数 编译阶段就会报错

for_each(v.begin(), v.end(), bind2nd(myprint(),100));

如果我们想使用绑定适配器,需要我们自己的函数对象继承binary_function 或者 unary_function

根据我们函数对象是一元函数对象 还是二元函数对象


//函数适配器bind1st bind2nd
//现在我有这个需求 在遍历容器的时候,我希望将容器中的值全部加上100之后显示出来,怎么做?
//我们直接给函数对象绑定参数 编译阶段就会报错
//for_each(v.begin(), v.end(), bind2nd(myprint(),100));
//如果我们想使用绑定适配器,需要我们自己的函数对象继承binary_function 或者 unary_function
//根据我们函数对象是一元函数对象 还是二元函数对象
class MyPrint :public binary_function
{
public:
	void operator()(int v1,int v2) const
	{
		cout             
关注
打赏
1688896170
查看更多评论
0.0829s