Compartilhar via


Operadores <optional>

operator==

Testa se o objeto optional à esquerda do operador é igual ao objeto optional à direita.

template <class T, class U> constexpr bool operator==(const optional<T>& left, const optional<U>& right);
template <class T> constexpr bool operator==(const optional<T>& left, nullopt_t right) noexcept;
template <class T> constexpr bool operator==(nullopt_t left, const optional<T>& right) noexcept;
template <class T, class U> constexpr bool operator==(const optional<T>&, const U&);
template <class T, class U> constexpr bool operator==(const U&, const optional<T>&);

Parâmetros

esquerda
Um objeto do tipo optional, nullopt_t ou T.

direita
Um objeto do tipo optional, nullopt_t ou T.

operator!=

Testa se o objeto optional à esquerda do operador é diferente do objeto optional à direita.

template <class T, class U> constexpr bool operator!=(const optional<T>&, const optional<U>&);
template <class T> constexpr bool operator!=(const optional<T>&, nullopt_t) noexcept;
template <class T> constexpr bool operator!=(nullopt_t, const optional<T>&) noexcept;
template <class T, class U> constexpr bool operator!=(const optional<T>&, const U&);
template <class T, class U> constexpr bool operator!=(const U&, const optional<T>&);

Parâmetros

esquerda
Um objeto do tipo optional, nullopt_t ou T.

direita
Um objeto do tipo optional, nullopt_t ou T.

Comentários

Esta função do modelo retorna !(left == right).

operator<

Testa se o objeto optional à esquerda do operador é menor do que o objeto optional à direita.

template <class T, class U> constexpr bool operator<(const optional<T>&, const optional<U>&);
template <class T> constexpr bool operator<(const optional<T>&, nullopt_t) noexcept;
template <class T> constexpr bool operator<(nullopt_t, const optional<T>&) noexcept;
template <class T, class U> constexpr bool operator<(const optional<T>&, const U&);
template <class T, class U> constexpr bool operator<(const U&, const optional<T>&);

Parâmetros

esquerda
Um objeto do tipo optional, nullopt_t ou T.

direita
Um objeto do tipo optional, nullopt_t ou T.

Valor de retorno

true se a lista no lado esquerdo do operador for menor que ou diferente da lista à direita do operador; caso contrário, false.

operator<=

Testa se o objeto optional à esquerda do operador é menor que ou igual ao objeto optional à direita.

template <class T, class U> constexpr bool operator<=(const optional<T>&, const optional<U>&);
template <class T> constexpr bool operator<=(const optional<T>&, nullopt_t) noexcept;
template <class T> constexpr bool operator<=(nullopt_t, const optional<T>&) noexcept;
template <class T, class U> constexpr bool operator<=(const optional<T>&, const U&);
template <class T, class U> constexpr bool operator<=(const U&, const optional<T>&);

Parâmetros

esquerda
Um objeto do tipo optional, nullopt_t ou T.

direita
Um objeto do tipo optional, nullopt_t ou T.

Valor de retorno

true se a lista no lado esquerdo do operador for menor que ou igual à lista à direita do operador; caso contrário, false.

Comentários

Esta função do modelo retorna !(right < left).

operator>

Testa se o objeto optional à esquerda do operador é maior do que o objeto optional à direita.

template <class T, class U> constexpr bool operator>(const optional<T>&, const optional<U>&);
template <class T> constexpr bool operator>(const optional<T>&, nullopt_t) noexcept;
template <class T> constexpr bool operator>(nullopt_t, const optional<T>&) noexcept;
template <class T, class U> constexpr bool operator>(const optional<T>&, const U&);
template <class T, class U> constexpr bool operator>(const U&, const optional<T>&);

Parâmetros

esquerda
Um objeto do tipo optional, nullopt_t ou T.

direita
Um objeto do tipo optional, nullopt_t ou T.

Valor de retorno

true se a lista no lado esquerdo do operador for maior que a lista à direita do operador; caso contrário, false.

Comentários

Esta função do modelo retorna right < left.

operator>=

Testa se o objeto optional à esquerda do operador é maior que ou igual ao objeto optional à direita.

template <class T, class U> constexpr bool operator>=(const optional<T>&, const optional<U>&);
template <class T> constexpr bool operator>=(const optional<T>&, nullopt_t) noexcept;
template <class T> constexpr bool operator>=(nullopt_t, const optional<T>&) noexcept;
template <class T, class U> constexpr bool operator>=(const optional<T>&, const U&);
template <class T, class U> constexpr bool operator>=(const U&, const optional<T>&);

Parâmetros

esquerda
Um objeto do tipo optional, nullopt_t ou T.

direita
Um objeto do tipo optional, nullopt_t ou T.

Valor de retorno

true se o optional à direita do operador for maior ou igual ao optional à direita do operador; caso contrário, false.

Comentários

A função do modelo retorna !(left < right).