如何计算迭代器中所有元素的数量?
我想要等同于以下代码的效果:
template<typename T,typename S,S val>
struct ConstantFunctor : unary_function<T,S>
{S operator()(const T&) const {return val;}};
template<typename T>
struct TrueFunctor : ConstantFunctor<T,bool,true>{};
...
count_if(c.begin(),c.end(),TrueFunctor());
怎么最好做到这一点呢?
我可以使用boost::lambda::constant(true)
,但也许有更清晰的方法。
std::distance
? - Vinzenz