Spec-Zone.ru › C++

operator==,!=,<,<=,>,>=,<=>(std::stack)

template< class T, class Container >
bool operator==( const std::stack<T, Container>& lhs,
                 const std::stack<T, Container>& rhs );
(1)
template< class T, class Container >
bool operator!=( const std::stack<T, Container>& lhs,
                 const std::stack<T, Container>& rhs );
(2)
template< class T, class Container >
bool operator< ( const std::stack<T, Container>& lhs,
                 const std::stack<T, Container>& rhs );
(3)
template< class T, class Container >
bool operator<=( const std::stack<T, Container>& lhs,
                 const std::stack<T, Container>& rhs );
(4)
template< class T, class Container >
bool operator> ( const std::stack<T, Container>& lhs,
                 const std::stack<T, Container>& rhs );
(5)
template< class T, class Container >
bool operator>=( const std::stack<T, Container>& lhs,
                 const std::stack<T, Container>& rhs );
(6)
template< class T, std::three_way_comparable Container >
std::compare_three_way_result_t<Container>
    operator<=>( const std::stack<T, Container>& lhs,
                 const std::stack<T, Container>& rhs );
(7) (начиная с C++20)

Сравнивает содержимое нижележащих контейнеров двух адаптеров контейнеров. Сравнение выполняется путём применения соответствующего оператора к нижележащим контейнерам.

Параметры

lhs, rhs - адаптеры контейнеров, содержимое которых нужно сравнить
-T должен удовлетворять требованиям EqualityComparable.

Возвращаемое значение

1-6) true, если соответствующее сравнение даёт результат true, и false в противном случае.
7) Результат трёхстороннего сравнения нижележащих контейнеров.

Сложность

Линейная относительно размера контейнера.

Пример

Отчёты об ошибках

Следующие отчёты об ошибках, изменяющие поведение, были ретроактивно применены к ранее опубликованным стандартам C++.

Отчёт об ошибке Применён к Опубликованное поведение Корректное поведение
LWG 410 C++98 семантика всех операторов сравнения отсутствовала добавлена

© cppreference.com
Licensed under the Creative Commons Attribution-ShareAlike Unported License v3.0.
https://en.cppreference.com/cpp/container/stack/operator_cmp

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API