[#BloombergLP-bslalg-RangeCompare-equal-0b] = xref:BloombergLP.adoc[BloombergLP]::xref:BloombergLP/bslalg.adoc[bslalg]::xref:BloombergLP/bslalg/RangeCompare.adoc[RangeCompare]::equal :relfileprefix: ../../../ :mrdocs: 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. == Synopsis Declared in `<bslalg_rangecompare.h>` [source,cpp,subs="verbatim,replacements,macros,-callouts"] ---- template<class INPUT_ITER> static bool equal( INPUT_ITER start1, INPUT_ITER end1, INPUT_ITER start2, INPUT_ITER end2); ---- [.small]#Created with https://www.mrdocs.com[MrDocs]#