OverflowException OverflowException OverflowException OverflowException Class

Definition

Die Ausnahme, die ausgelöst wird, wenn eine arithmetische, Umwandlungs- oder Konvertierungsoperation in einem geprüften Kontext einen Überlauf verursacht.The exception that is thrown when an arithmetic, casting, or conversion operation in a checked context results in an overflow.

public ref class OverflowException : ArithmeticException
[System.Runtime.InteropServices.ComVisible(true)]
[System.Serializable]
public class OverflowException : ArithmeticException
type OverflowException = class
    inherit ArithmeticException
Public Class OverflowException
Inherits ArithmeticException
Vererbung
Attribute

Hinweise

Ein OverflowException wird zur Laufzeit in den folgenden Situationen ausgelöst:An OverflowException is thrown at run time under the following conditions:

  • Eine arithmetische Operation erzeugt ein Ergebnis, das außerhalb des Bereichs des Datentyps, die vom Vorgang zurückgegeben wird.An arithmetic operation produces a result that is outside the range of the data type returned by the operation. Das folgende Beispiel veranschaulicht die OverflowException , ausgelöst durch einen Multiplikationsvorgang, die die Grenzen des überschreitet die Int32 Typ.The following example illustrates the OverflowException that is thrown by a multiplication operation that overflows the bounds of the Int32 type.

    int value = 780000000;
    checked {
    try {
       // Square the original value.
       int square = value * value; 
       Console.WriteLine("{0} ^ 2 = {1}", value, square);
    }
    catch (OverflowException) {
       double square = Math.Pow(value, 2);
       Console.WriteLine("Exception: {0} > {1:E}.", 
                         square, Int32.MaxValue);
    } }
    // The example displays the following output:
    //       Exception: 6.084E+17 > 2.147484E+009.
    
    Dim value As Integer = 780000000
    Try
       ' Square the original value.
       Dim square As Integer = value * value 
       Console.WriteLine("{0} ^ 2 = {1}", value, square)
    Catch e As OverflowException
       Dim square As Double = Math.Pow(value, 2)
       Console.WriteLine("Exception: {0} > {1:E}.", _
                         square, Int32.MaxValue)
    End Try
    ' The example displays the following output:
    '       Exception: 6.084E+17 > 2.147484E+009.
    
  • Ein Umwandlung oder Konvertierung-Vorgang versucht, eine einschränkende Konvertierung auszuführen, und des Werts des Typs der Daten außerhalb des Bereichs der der Zieldatentyp.A casting or conversion operation attempts to perform a narrowing conversion, and the value of the source data type is outside the range of the target data type. Das folgende Beispiel veranschaulicht die OverflowException , die von der Versuch, einen großen Bytewert ohne Vorzeichen-Wert in einen Bytewert mit Vorzeichen konvertieren ausgelöst wird.The following example illustrates the OverflowException that is thrown by the attempt to convert a large unsigned byte value to a signed byte value.

    byte value = 241;
    checked {
    try {
       sbyte newValue = (sbyte) value;
       Console.WriteLine("Converted the {0} value {1} to the {2} value {3}.", 
                         value.GetType().Name, value, 
                         newValue.GetType().Name, newValue);
    }
    catch (OverflowException) {
       Console.WriteLine("Exception: {0} > {1}.", value, SByte.MaxValue);
    } }                            
    // The example displays the following output:
    //       Exception: 241 > 127.
    
    Dim value As Byte = 241
    Try
       Dim newValue As SByte = (CSByte(value))
       Console.WriteLine("Converted the {0} value {1} to the {2} value {3}.", _
                         value.GetType().Name, value, _
                         newValue.GetType().Name, newValue)
    Catch e As OverflowException
       Console.WriteLine("Exception: {0} > {1}.", value, SByte.MaxValue)
    End Try                            
    ' The example displays the following output:
    '       Exception: 241 > 127.
    

In jedem Fall ist das Ergebnis des Vorgangs ein Wert, der kleiner als der MinValue Eigenschaft oder größer als die MaxValue Eigenschaft des Datentyps, die aus der Operation ergibt.In each case, the result of the operation is a value that is less than the MinValue property or greater than the MaxValue property of the data type that results from the operation.

Für den Vorgang Arithmetik-, Umwandlungs- oder Konvertierungsvorgang Auslösen einer OverflowException, der Vorgang muss in einem überprüften Kontext auftreten.For the arithmetic, casting, or conversion operation to throw an OverflowException, the operation must occur in a checked context. Standardmäßig werden die arithmetischen Operationen und Überläufe in Visual Basic überprüft. in C# sind sie nicht.By default, arithmetic operations and overflows in Visual Basic are checked; in C#, they are not. Wenn der Vorgang in einem ungeprüften Kontext auftritt, wird das Ergebnis abgeschnitten, indem alle höherwertigen Bits, die nicht in den Zieltyp passen verworfen.If the operation occurs in an unchecked context, the result is truncated by discarding any high-order bits that do not fit into the destination type. Das folgende Beispiel veranschaulicht eine solche nicht überprüfte Konvertierung in C# geschrieben.The following example illustrates such an unchecked conversion in C#. Es wird im vorherige Beispiel in einem ungeprüften Kontext wiederholt.It repeats the previous example in an unchecked context.

byte value = 241;
try {
   sbyte newValue = (sbyte) value;
   Console.WriteLine("Converted the {0} value {1} to the {2} value {3}.", 
                     value.GetType().Name, value, 
                     newValue.GetType().Name, newValue);
}
catch (OverflowException) {
   Console.WriteLine("Exception: {0} > {1}.", value, SByte.MaxValue);
}
// The example displays the following output:
//       Converted the Byte value 241 to the SByte value -15.

Die folgenden Microsoft intermediate Language (MSIL)-Anweisungen Auslösen einer OverflowException:The following Microsoft intermediate language (MSIL) instructions throw an OverflowException:

  • add.ovf. <signed>add.ovf. <signed>

  • conv.ovf. <in den Typ >conv.ovf. <to type>

  • conv.ovf. <in den Typ > .unconv.ovf. <to type> .un

  • mul.ovf. <type>mul.ovf. <type>

  • sub.ovf. <type>sub.ovf. <type>

  • newarr

OverflowException verwendet das HRESULT COR_E_OVERFLOW mit den Wert 0 x 80131516 an.OverflowException uses the HRESULT COR_E_OVERFLOW, which has the value 0x80131516.

Eine Liste der anfänglichen Eigenschaftswerte für eine Instanz von OverflowException, finden Sie unter den OverflowException Konstruktoren.For a list of initial property values for an instance of OverflowException, see the OverflowException constructors.

Konstruktoren

OverflowException() OverflowException() OverflowException() OverflowException()

Initialisiert eine neue Instanz der OverflowException-Klasse.Initializes a new instance of the OverflowException class.

OverflowException(SerializationInfo, StreamingContext) OverflowException(SerializationInfo, StreamingContext) OverflowException(SerializationInfo, StreamingContext) OverflowException(SerializationInfo, StreamingContext)

Initialisiert eine neue Instanz der OverflowException-Klasse mit serialisierten Daten.Initializes a new instance of the OverflowException class with serialized data.

OverflowException(String) OverflowException(String) OverflowException(String) OverflowException(String)

Initialisiert eine neue Instanz der OverflowException-Klasse mit einer angegebenen Fehlermeldung.Initializes a new instance of the OverflowException class with a specified error message.

OverflowException(String, Exception) OverflowException(String, Exception) OverflowException(String, Exception) OverflowException(String, Exception)

Initialisiert eine neue Instanz der OverflowException-Klasse mit einer angegebenen Fehlermeldung und einem Verweis auf die innere Ausnahme, die diese Ausnahme ausgelöst hat.Initializes a new instance of the OverflowException class with a specified error message and a reference to the inner exception that is the cause of this exception.

Eigenschaften

Data Data Data Data

Ruft eine Auflistung von Schlüssel-Wert-Paaren ab, die zusätzliche benutzerdefinierte Informationen über die Ausnahme bereitstellen.Gets a collection of key/value pairs that provide additional user-defined information about the exception.

(Inherited from Exception)
HelpLink HelpLink HelpLink HelpLink

Ruft einen Link zur Hilfedatei ab, die dieser Ausnahme zugeordnet ist, oder legt einen Link fest.Gets or sets a link to the help file associated with this exception.

(Inherited from Exception)
HResult HResult HResult HResult

Ruft HRESULT ab oder legt HRESULT fest. Dies ist ein codierter Wert, der einer bestimmten Ausnahme zugeordnet ist.Gets or sets HRESULT, a coded numerical value that is assigned to a specific exception.

(Inherited from Exception)
InnerException InnerException InnerException InnerException

Ruft die Exception-Instanz ab, die die aktuelle Ausnahme verursacht hat.Gets the Exception instance that caused the current exception.

(Inherited from Exception)
Message Message Message Message

Ruft eine Meldung ab, die die aktuelle Ausnahme beschreibt.Gets a message that describes the current exception.

(Inherited from Exception)
Source Source Source Source

Gibt den Namen der Anwendung oder des Objekts zurück, die bzw. das den Fehler verursacht hat, oder legt diesen fest.Gets or sets the name of the application or the object that causes the error.

(Inherited from Exception)
StackTrace StackTrace StackTrace StackTrace

Ruft eine Zeichenfolgendarstellung der unmittelbaren Frames in der Aufrufliste ab.Gets a string representation of the immediate frames on the call stack.

(Inherited from Exception)
TargetSite TargetSite TargetSite TargetSite

Ruft die Methode ab, die die aktuelle Ausnahme auslöst.Gets the method that throws the current exception.

(Inherited from Exception)

Methoden

Equals(Object) Equals(Object) Equals(Object) Equals(Object)

Bestimmt, ob das angegebene Objekt mit dem aktuellen Objekt identisch ist.Determines whether the specified object is equal to the current object.

(Inherited from Object)
GetBaseException() GetBaseException() GetBaseException() GetBaseException()

Gibt beim Überschreiben in einer abgeleiteten Klasse eine Exception zurück, die die ursprüngliche Ursache für eine oder mehrere nachfolgende Ausnahmen ist.When overridden in a derived class, returns the Exception that is the root cause of one or more subsequent exceptions.

(Inherited from Exception)
GetHashCode() GetHashCode() GetHashCode() GetHashCode()

Fungiert als Standardhashfunktion.Serves as the default hash function.

(Inherited from Object)
GetObjectData(SerializationInfo, StreamingContext) GetObjectData(SerializationInfo, StreamingContext) GetObjectData(SerializationInfo, StreamingContext) GetObjectData(SerializationInfo, StreamingContext)

Legt beim Überschreiben in einer abgeleiteten Klasse die SerializationInfo mit Informationen über die Ausnahme fest.When overridden in a derived class, sets the SerializationInfo with information about the exception.

(Inherited from Exception)
GetType() GetType() GetType() GetType()

Ruft den Laufzeittyp der aktuellen Instanz ab.Gets the runtime type of the current instance.

(Inherited from Exception)
MemberwiseClone() MemberwiseClone() MemberwiseClone() MemberwiseClone()

Erstellt eine flache Kopie des aktuellen Object.Creates a shallow copy of the current Object.

(Inherited from Object)
ToString() ToString() ToString() ToString()

Erstellt eine Zeichenfolgendarstellung der aktuellen Ausnahme und gibt diese zurück.Creates and returns a string representation of the current exception.

(Inherited from Exception)

Ereignisse

SerializeObjectState SerializeObjectState SerializeObjectState SerializeObjectState

Tritt auf, wenn eine Ausnahme serialisiert wird, um ein Ausnahmezustandsobjekt mit serialisierten Daten über die Ausnahme zu erstellen.Occurs when an exception is serialized to create an exception state object that contains serialized data about the exception.

(Inherited from Exception)

Gilt für:

Siehe auch