Spec-Zone.ru › C++

operator==, <=>(std::indirect)

Определено в заголовке <memory>
Сравнение двух объектов indirect
template< class U, class A >
constexpr bool operator==( const indirect& lhs, const indirect<U, A>& rhs )
    noexcept(noexcept(*lhs == *rhs));
(1) (начиная с C++26)
template< class U, class A >
constexpr /*synth-three-way-result*/<T, U>
    operator<=>( const indirect& lhs, const indirect<U, A>& rhs );
(2) (начиная с C++26)
Сравнение объекта indirect со значением
template< class U >
constexpr bool operator==( const indirect& ind, const U& value )
    noexcept(noexcept(*lhs == value));
(3) (начиная с C++26)
template< class U >
constexpr /*synth-three-way-result*/<T, U>
    operator<=>( const indirect& ind, const U& value );
(4) (начиная с C++26)

Выполняет операции сравнения над объектами indirect.

Определение /*synth-three-way-result*/ см. в разделе synth-three-way-result .

1,2) Сравнивает два объекта indirect; результат сравнения определяется следующим образом:
lhs не содержит значения содержит значение
rhs не содержит значения содержит значение не содержит значения содержит значение
operator== true false false *lhs == *rhs
operator<=> !lhs.valueless_after_move() <=>!rhs.valueless_after_move() synth-three-way
    (*lhs,*rhs)
1) Если выражение *lhs == *rhs некорректно или его результат не преобразуется к типу bool, программа некорректна.
3,4) Сравнивает объект indirect со значением; результат сравнения определяется следующим образом:
Оператор ind не содержит значения ind содержит значение
operator== false *ind == value
operator<=> std::strong_ordering::less synth-three-way (*ind,value)
3) Если выражение *ind == value некорректно или его результат не преобразуется к типу bool, программа некорректна.

Параметры

lhs, rhs, ind - объект indirect для сравнения
value - значение для сравнения с хранимым значением

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

Как описано выше.

Пример

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

Spec-Zone.ru

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