thrust::distance
Defined in thrust/distance.h
-
template<typename InputIterator>
inline thrust::iterator_traits<InputIterator>::difference_type thrust::distance(InputIterator first, InputIterator last) distance
finds the distance betweenfirst
andlast
, i.e. the number of times thatfirst
must be incremented until it is equal tolast
.The following code snippet demonstrates how to use
distance
to compute the distance to one iterator from another.#include <thrust/distance.h> #include <thrust/device_vector.h> ... thrust::device_vector<int> vec(13); thrust::device_vector<int>::iterator iter1 = vec.begin(); thrust::device_vector<int>::iterator iter2 = iter1 + 7; int d = thrust::distance(iter1, iter2); // d is 7
- Parameters
first – The beginning of an input range of interest.
last – The end of an input range of interest.
- Template Parameters
InputIterator – is a model of Input Iterator.
- Returns
The distance between the beginning and end of the input range.
- Pre
If
InputIterator
meets the requirements of random access iterator,last
shall be reachable fromfirst
orfirst
shall be reachable fromlast
; otherwise,last
shall be reachable fromfirst
.