operator==,!=,<,<=,>,>=(std::array)
Z cppreference.com
template< class T, std::size_t N > bool operator==( const array<T,N>& lhs, |
(1) | |
template< class T, std::size_t N > bool operator!=( const array<T,N>& lhs, |
(2) | |
template< class T, std::size_t N > bool operator<( const array<T,N>& lhs, |
(3) | |
template< class T, std::size_t N > bool operator<=( const array<T,N>& lhs, |
(4) | |
template< class T, std::size_t N > bool operator>( const array<T,N>& lhs, |
(5) | |
template< class T, std::size_t N > bool operator>=( const array<T,N>& lhs, |
(6) | |
Porównuje zawartość dwóch kontenerów.
1-2) Sprawdza, czy kontenery lhs i rhs są równe, tj. czy każdy element w lhs jest przy porównaniu równy elementowi rhs na tej samej pozycji.
3-6) Porównuje zawartość lhs i rhs leksykograficznie. Porównanie jest wykonywane przez funkcję odpowiadającą std::lexicographical_compare.
[edytuj] Parametry
lhs, rhs | - | kontenery, których zawartość zostaje porównana |
-T musi spełniać wymagania EqualityComparable aby użyć przeładowań (1-2). | ||
-T musi spełniać wymagania LessThanComparable aby użyć przeładowań (3-6). Relacja porządkująca musi ustanawiać porządek liniowy. |
[edytuj] Zwracana wartość
1) true jeśli zawartość kontenerów jest równa, w przeciwnym razie false
2) true jeśli zawartość kontenerów jest różna, w przeciwnym razie false
3) true jeśli zawartość lhs jest leksykograficznie mniejsza niż zawartość rhs, w przeciwnym razie false
4) true jeśli zawartość lhs jest leksykograficznie mniejsza lub równa zawartości rhs, w przeciwnym razie false
5) true jeśli zawartość lhs jest leksykograficznie większa niż zawartość rhs, w przeciwnym razie false
6) true jeśli zawartość lhs jest leksykograficznie większa lub równa zawartości rhs, w przeciwnym razie false
[edytuj] Złożoność
Liniowa względem rozmiaru kontenera