Si un débordement de flotteur se produit sur une valeur, je veux le mettre à zéro, comme ça ...Comment gérer un débordement de flotteur?
m_speed += val;
if (m_speed > numeric_limits<float>::max()) { // This might not even work, since some impls will wraparound after previous line
m_speed = 0.f
}
mais une fois val
a été ajouté à m_speed
, le trop-plein a déjà eu lieu (et je suis en supposant que le même problème se produirait si je ne if ((m_speed + val) > ..)
Comment puis-je vérifier pour vous assurer un débordement va se produire, sans provoquer un débordement
+/- Inf n'est pas le même que NaN –
@Axel: bon point - je ne devrais pas avoir confondu les deux - je tends à penser INF comme une sorte de NaN mais IEEE-754 les traite comme différentes entités. –