System.Math.CompareValue
Delphi
function CompareValue(const A, B: Extended; Epsilon: Extended): TValueRelationship;
function CompareValue(const A, B: Double; Epsilon: Double): TValueRelationship;
function CompareValue(const A, B: Single; Epsilon: Single): TValueRelationship;
function CompareValue(const A, B: Integer): TValueRelationship;
function CompareValue(const A, B: Int64): TValueRelationship;
function CompareValue(const A, B: UInt64): TValueRelationship;
C++
extern DELPHI_PACKAGE System::Types::TValueRelationship __fastcall CompareValue(const System::Extended A, const System::Extended B, System::Extended Epsilon = 0.000000E+00)/* overload */;
Propriétés
| Type | Visibilité | Source | Unité | Parent |
|---|---|---|---|---|
| function | public | System.Math.pas System.Math.hpp |
System.Math | System.Math |
Description
Renvoie la relation existant entre deux valeurs numériques.
Appelez CompareValue pour déterminer la relation existant entre deux valeurs numériques. Lorsque vous comparez des valeurs en virgule flottante, CompareValue vous permet de spécifier la différence maximale à utiliser pour la comparaison : les valeurs seront considérées comme égales si leur différence n'atteint pas cette quantité.
A et B sont les valeurs à comparer.
Epsilon est la quantité maximale dont A et B peuvent s'éloigner tout en étant considérées comme égales.
CompareValue renvoie l'une des constantes suivantes définies pour le type TValueRelationship :
LessThanValuesiAest inférieur àB(par plus deEpsilonsiAetBsont des nombres en virgule flottante).EqualsValuesiAest équivalent àB(égaux, ou compris dansEpsilonsiAetBsont des nombres en virgule flottante).GreaterThanValuesiAest supérieur àB(par plus deEpsilonsiAetBsont des nombres en virgule flottante).
Si , alors une valeur par défaut raisonnable est utilisée implicitement. Par exemple, la version Double de SameValue utilise la valeur par défaut : Epsilon = 0
Epsilon = Max(Min(Abs(A), Abs(B)) * 1E-12, 1E-12)