解决问题#C ++ 98使用Boost库1.53或1.56在代码中有效使用“for_each”

时间:2014-11-14 16:34:17

标签: c++ boost boost-bind boost-foreach

我已经问了这个问题。我想知道是否有任何使用boost :: for_each和boost :: bind的 this 的解决方案。

问题已经得到解答,这就是我在这里创建另一个问题的原因;只是为了好奇心。 感谢。

1 个答案:

答案 0 :(得分:2)

是的,您可以使用boost::bind创建一个合适的仿函数,并为参与者的参数添加占位符:

for_each(oldpnTs.begin(), oldpnTs.end(), bind(typeDetection, _1, ALL, *this));

在现代C ++中,我更喜欢新式循环

for (pnt & p : oldpnTs) {
    typeDetection(p, ALL, *this);
}