URL: https://linuxfr.org/forums/programmation-c/posts/marquer-un-double-comme-%C3%A9tant-non-%C3%A9labor%C3%A9 Title: Marquer un double comme étant non élaboré. Authors: locnet Date: 2005年06月23日T14:00:40+02:00 Tags: Score: 0 Je gère des grandeurs 'double'. Certaines sont déjà calculées, d'autres pas encore. Je cherche une solution élégante pour pouvoir les distinguées. J'ai pensée à : - associer un bool 'estElaboree' à chaque grandeur. Fonctionnellement c'est parfait, mais un peu lourd à gérer. Je double mon nombre de variables. Et puis il faut gérer la cohérence entre les grandeurs et les booléen à chaque ajout ou suppression de grandeurs. -initialiser toutes mes grandeurs à une valeur spécifique constante (connue dès la compilation DOUBLE_NON_ELABOREE. Mais quelle valeur choisir ? : . J'ai pensé à const Double DOUBLE_NON_DEFINI = 1.0e31; Ca marche, mais pas très élégant. Et si un jour un calcul donne pile poile 1.0e31 ? . J'ai essayé const Double DOUBLE_NON_DEFINI = numeric_limits::max(); Mais ça ne compile pas. Je pense que numeric_limits::max() n'est pas connu à la compilation, mais à l'exécution. La solution doit fonctionner sous gcc, mais aussi être portable. Vous avez des idées ? (Nan?, inf?, définir la valeur comme n'étant pas constante peut-être ?). Merci

AltStyle によって変換されたページ (->オリジナル) /