看到std::count
返回的 a iterator_traits<InputIterator>::difference_type
,我真的很惊讶,它又指的是long int
我平台上的 a 。
这是为什么?容器内的负数元素没有任何意义。
看到std::count
返回的 a iterator_traits<InputIterator>::difference_type
,我真的很惊讶,它又指的是long int
我平台上的 a 。
这是为什么?容器内的负数元素没有任何意义。
它实际上是 a std::ptrdiff_t
,它必须是有符号整数。它必须被签名,因为它可以用作两个迭代器之间的差异,这当然可以是负数。