gpt4 book ai didi

c++ - 自动推断 bind1st(mem_fun(&my_class::f), this) 的类型?

转载 作者:行者123 更新时间:2023-11-30 00:59:15 25 4
gpt4 key购买 nike

我想将 bind1st(mem_fun(&my_class::f), this) 仿函数传递给 for_each。不幸的是,它很难阅读,所以我想给它起一个更易读的名字,如下所示:

(the type I am looking for) meaningful_name = bind1st(mem_fun(&my_class::f), this);

for_each(v.begin(), v.end(), meaningful_name);

是否有一种简单的方法来推断仿函数的类型? (我知道 mem_fun 正是出于这个原因,为我们省去了很多痛苦。)

最佳答案

这取决于 my_class:f 的参数和返回类型。如果函数是

T my_class::f(A arg)

那么你需要

binder1st<mem_fun1_t<T,my_class,A> > meaningful_name = bind1st(mem_fun(&my_class::f), this);

这种事情在 C++0x 中会更好:

auto meaningful_name = bind1st(mem_fun(&my_class::f), this);

关于c++ - 自动推断 bind1st(mem_fun(&my_class::f), this) 的类型?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4769034/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com