Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
Jean-Marc Bourguet
Laurent Deniau writes:
Dans la bib Boost::tribool, on trouve:
inline tribool operator==(tribool x, tribool y) { if (indeterminate(x) || indeterminate(y)) return indeterminate; else return x && y || !x && !y; }
Ou &&, || et ! sont overloades pour tribool et font aussi des if-else
Est-ce qu'il y aurait une bonne raison pour ne pas avoir directement fait:
return tribool(x.value == y.value);
dans le else?
Je n'ai pas regarde le code mais je n'en vois a priori pas. L'indetermine defini un absorbant pour toutes les operations et a par cela c'est la logique booleenne.
Peut-etre pour eviter d'avoir == friend ?
A+
-- Jean-Marc
Laurent Deniau <laurent.deniau@cern.ch> writes:
Dans la bib Boost::tribool, on trouve:
inline tribool operator==(tribool x, tribool y)
{
if (indeterminate(x) || indeterminate(y))
return indeterminate;
else
return x && y || !x && !y;
}
Ou &&, || et ! sont overloades pour tribool et font aussi des if-else
Est-ce qu'il y aurait une bonne raison pour ne pas avoir directement fait:
return tribool(x.value == y.value);
dans le else?
Je n'ai pas regarde le code mais je n'en vois a priori pas. L'indetermine
defini un absorbant pour toutes les operations et a par cela c'est la
logique booleenne.
inline tribool operator==(tribool x, tribool y) { if (indeterminate(x) || indeterminate(y)) return indeterminate; else return x && y || !x && !y; }
Ou &&, || et ! sont overloades pour tribool et font aussi des if-else
Est-ce qu'il y aurait une bonne raison pour ne pas avoir directement fait:
return tribool(x.value == y.value);
dans le else?
Je n'ai pas regarde le code mais je n'en vois a priori pas. L'indetermine defini un absorbant pour toutes les operations et a par cela c'est la logique booleenne.
Peut-etre pour eviter d'avoir == friend ?
A+
-- Jean-Marc
Laurent Deniau
Jean-Marc Bourguet wrote:
Laurent Deniau writes:
Dans la bib Boost::tribool, on trouve:
inline tribool operator==(tribool x, tribool y) { if (indeterminate(x) || indeterminate(y)) return indeterminate; else return x && y || !x && !y; }
Ou &&, || et ! sont overloades pour tribool et font aussi des if-else
Est-ce qu'il y aurait une bonne raison pour ne pas avoir directement fait:
return tribool(x.value == y.value);
dans le else?
Je n'ai pas regarde le code mais je n'en vois a priori pas.