Return whether two ranges have the same length and compare equal.

Synopsis

Declared in <bslalg_rangecompare.h>

template<class INPUT_ITER>
static
bool
equal(
    INPUT_ITER start1,
    INPUT_ITER end1,
    INPUT_ITER start2,
    INPUT_ITER end2);

Description

Compare each element in the range beginning at the specified start1 position and ending immediately before the specified end1 position, to the corresponding element in the range beginning at the specified start2 position and ending immediately before the specified end2 position, as if by using operator== element‐by‐element. Optionally specify the length of each range, length1 and length2. Return true if the ranges have the same length and every element in the first range compares equal with the corresponding element in the second, and false otherwise. The behavior is undefined unless length1 is either unspecified or equals the length of the range [start1, end1)], and length2 is either unspecified or equals the length of the range [start2, end2)]. Note that this implementation uses operator== to perform the comparisons, or bit‐wise comparison if the value type has the bit‐wise equality‐comparable trait. Also note that providing lengths may reduce the runtime cost of this operation.

Return Value

true if the ranges have the same length and compare equal, and false otherwise

Parameters

Name

Description

start1

beginning of the first range

end1

end of the first range (one past the last element)

start2

beginning of the second range

end2

end of the second range (one past the last element)

Created with MrDocs