System.Math.ClearExceptions
Delphi
procedure ClearExceptions(RaisePending: Boolean; ExceptionFlags: TArithmeticExceptions);
C++
extern DELPHI_PACKAGE void __fastcall ClearExceptions(bool RaisePending = true, TArithmeticExceptions ExceptionFlags = TArithmeticExceptions() );
Eigenschaften
Typ | Sichtbarkeit | Quelle | Unit | Übergeordnet |
---|---|---|---|---|
procedure function |
public | System.Math.pas System.Math.hpp |
System.Math | System.Math |
Beschreibung
Löscht Gleitkomma-Exceptions.
ClearExceptions verhält sich auf verschiedenen Plattformen unterschiedlich:
- Auf Plattformen wie Android, iOS, iOS-Simulator und 64-Bit-OSX.
- Wenn
RaisePending
False
ist, setzt ClearExceptions diejenigen Gleitkomma-Exceptions zurück, die sowohl aktuell gesetzt als auch inExceptionFlags
angegeben sind. ClearExceptions löscht alle anderen Gleitkomma-Exceptions und beendet die Prozedur. - Wenn
RaisePending
True
ist, dann generiert ClearExceptions auch alle Gleitkomma-Exceptions, die zurückgesetzt wurden.
- Wenn
- Auf anderen 32-Bit- und 64-Bit-Plattformen. ClearExceptions löscht alle Gleitkomma-Exceptions und beendet die Prozedur.
Standardmäßig ist RaisePending
True
und ExceptionFlags
ist DefaultExceptionFlags
.
DefaultExceptionFlags = [ TArithmeticException.exInvalidOp, TArithmeticException.exZeroDivide, TArithmeticException.exOverflow];
Daher werden die folgenden Exceptions standardmäßig auf Plattformen wie Android, iOS, iOS-Simulator und 64-Bit-OSX ausgelöst:
- Versuch, eine ungültige Operation auszuführen.
- Versuch einer Division durch Null.
- Eine Zahl hat den höchsten unterstützten positiven Wert überschritten.