Partager via


<system_error>, opérateurs

operator==

Teste si l'objet situé à gauche de l'opérateur est égal à l'objet situé à droite.

bool operator==(const error_code& left,
    const error_condition& right);

bool operator==(const error_condition& left,
    const error_code& right);

bool operator==(const error_condition& left,
    const error_condition& right);

Paramètres

left
Objet à tester pour l’égalité.

right
Objet à tester pour l’égalité.

Valeur de retour

true si les objets sont égaux ; false si les objets ne sont pas égaux.

Notes

Cette fonction retourne left.category() == right.category() && left.value() == right.value().

operator!=

Teste si l'objet situé à gauche de l'opérateur n'est pas égal à l'objet situé à droite.

bool operator!=(const error_code& left, const error_condition& right);
bool operator!=(const error_condition& left, const error_code& right);
bool operator!=(const error_code& left, const error_code& right);
bool operator!=(const error_condition& left, const error_condition& right);

Paramètres

left
Objet à tester pour l’inégalité.

right
Objet à tester pour l’inégalité.

Valeur de retour

true si l’objet passé dans gauche n’est pas égal à l’objet passé dans right; sinon, false.

Notes

Cette fonction retourne !(left == right).

operator<

Vérifie si un objet est inférieur à l'objet passé en vue de leur comparaison.

template <class _Enum>
inline bool operator<(
    _Enum left,
    typename enable_if<is_error_code_enum<_Enum>::value,
    const error_code&>::type right);

template <class _Enum>
inline bool operator<(
    typename enable_if<is_error_code_enum<_Enum>::value,
    const error_code&>::type left, _Enum right);

template <class _Enum>
inline bool operator<(
    _Enum left,
    typename enable_if<is_error_condition_enum<_Enum>::value,
    const error_condition&>::type right);

template <class _Enum>
inline bool operator<(
    typename enable_if<is_error_condition_enum<_Enum>::value,
    const error_condition&>::type left, _Enum right);

Paramètres

left
Objet à comparer.

right
Objet à comparer.

Valeur de retour

true si l’objet passé dans left est inférieur à l’objet passé dans right; Sinon, false.

Notes

Cette fonction permet de tester l'ordre des erreurs.

operator<<

Insère un objet error_code dans le flux de sortie.

template <class charT, class traits>
basic_ostream<charT, traits>& operator<<(basic_ostream<charT, traits>& os, const error_code& ec);

Paramètres

os
Flux de sortie cible.

ec
Objet error_code à générer.

Valeur de retour

Référence au flux de sortie modifié.

Notes

Cet opérateur effectue l’équivalent de os << ec.category().name() << ':' << ec.value().

Exemple

#include <iostream>
#include <system_error>

int main()
{
    std::error_code ec(1234, std::generic_category());
    std::cout << ec;
}
generic:1234