【发布时间】:2020-06-16 13:32:02
【问题描述】:
这是来自https://devdocs.io/cpp/algorithm/count_if的计数算法的示例实现:
template<class InputIt, class T>
typename iterator_traits<InputIt>::difference_type
count(InputIt first, InputIt last, const T& value)
{
typename iterator_traits<InputIt>::difference_type ret = 0;
for (; first != last; ++first) {
if (*first == value) {
ret++;
}
}
return ret;
}
我的问题是,typename iterator_traits<InputIt>::difference_type 的意义是什么?
如果我要实现这个,我会简单地使用unsigned int 来跟踪计数。
【问题讨论】:
标签: c++ algorithm templates iterator dependent-name