DivideByZeroException Класс
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Исключение, которое возникает при попытке деления целого значения или значения Decimal на ноль.
public ref class DivideByZeroException : ArithmeticException
public class DivideByZeroException : ArithmeticException
[System.Serializable]
public class DivideByZeroException : ArithmeticException
[System.Serializable]
[System.Runtime.InteropServices.ComVisible(true)]
public class DivideByZeroException : ArithmeticException
type DivideByZeroException = class
inherit ArithmeticException
[<System.Serializable>]
type DivideByZeroException = class
inherit ArithmeticException
[<System.Serializable>]
[<System.Runtime.InteropServices.ComVisible(true)>]
type DivideByZeroException = class
inherit ArithmeticException
Public Class DivideByZeroException
Inherits ArithmeticException
- Наследование
- Наследование
- Атрибуты
Примеры
В следующем примере обрабатывается DivideByZeroException исключение в целочисленном делении.
using System;
public class Example
{
public static void Main()
{
int number1 = 3000;
int number2 = 0;
try {
Console.WriteLine(number1 / number2);
}
catch (DivideByZeroException) {
Console.WriteLine("Division of {0} by zero.", number1);
}
}
}
// The example displays the following output:
// Division of 3000 by zero.
open System
let number1 = 3000
let number2 = 0
try
printfn $"{number1 / number2}"
with :? DivideByZeroException ->
printfn $"Division of {number1} by zero."
// The example displays the following output:
// Division of 3000 by zero.
Module Example
Public Sub Main()
Dim number1 As Integer = 3000
Dim number2 As Integer = 0
Try
Console.WriteLine(number1\number2)
Catch e As DivideByZeroException
Console.WriteLine("Division of {0} by zero.", number1)
End Try
End Sub
End Module
' The example displays the following output:
' Division of 3000 by zero.
Комментарии
Попытка деления целого числа или Decimal числа на ноль вызывает DivideByZeroException исключение. Чтобы предотвратить исключение, убедитесь, что знаменатель в операции деления с целым числом или Decimal значениями не равен нулю.
Деление значения с плавающей запятой на ноль не приводит к возникновению исключения; это приводит к положительной бесконечности, отрицательной бесконечности или не числу (NaN), согласно правилам арифметики IEEE 754. Так как в следующем примере используется деление с плавающей запятой, а не целочисленное деление, операция не создает DivideByZeroException исключение.
using System;
public class Example
{
public static void Main()
{
int number1 = 3000;
int number2 = 0;
Console.WriteLine((double)number1 / number2);
}
}
// The example displays the following output:
// Infinity
open System
let number1 = 3000.
let number2 = 0.
printfn $"{number1 / number2}"
// The example displays the following output:
// Infinity
Module Example
Public Sub Main()
Dim number1 As Integer = 3000
Dim number2 As Integer = 0
Console.WriteLine(number1/number2)
End Sub
End Module
' The example displays the following output:
' Infinity
Дополнительные сведения см. в разделах Single и Double.
Приведенные ниже инструкции msIL создают следующие DivideByZeroExceptionинструкции microsoft:
div
div.un
rem
rem.un
DivideByZeroException использует COR_E_DIVIDEBYZERO HRESULT, имеющий значение 0x80020012.
Список начальных значений свойств для экземпляра DivideByZeroException, см. в разделе DivideByZeroException конструкторы.
Конструкторы
DivideByZeroException() |
Инициализирует новый экземпляр класса DivideByZeroException. |
DivideByZeroException(SerializationInfo, StreamingContext) |
Инициализирует новый экземпляр класса DivideByZeroException с сериализованными данными. |
DivideByZeroException(String) |
Инициализирует новый экземпляр класса DivideByZeroException с указанным сообщением об ошибке. |
DivideByZeroException(String, Exception) |
Инициализирует новый экземпляр класса DivideByZeroException указанным сообщением об ошибке и ссылкой на внутреннее исключение, вызвавшее данное исключение. |
Свойства
Data |
Возвращает коллекцию пар «ключ-значение», предоставляющую дополнительные сведения об исключении. (Унаследовано от Exception) |
HelpLink |
Получает или задает ссылку на файл справки, связанный с этим исключением. (Унаследовано от Exception) |
HResult |
Возвращает или задает HRESULT — кодированное числовое значение, присвоенное определенному исключению. (Унаследовано от Exception) |
InnerException |
Возвращает экземпляр класса Exception, который вызвал текущее исключение. (Унаследовано от Exception) |
Message |
Возвращает сообщение, описывающее текущее исключение. (Унаследовано от Exception) |
Source |
Возвращает или задает имя приложения или объекта, вызывавшего ошибку. (Унаследовано от Exception) |
StackTrace |
Получает строковое представление непосредственных кадров в стеке вызова. (Унаследовано от Exception) |
TargetSite |
Возвращает метод, создавший текущее исключение. (Унаследовано от Exception) |
Методы
Equals(Object) |
Определяет, равен ли указанный объект текущему объекту. (Унаследовано от Object) |
GetBaseException() |
При переопределении в производном классе возвращает исключение Exception, которое является первопричиной одного или нескольких последующих исключений. (Унаследовано от Exception) |
GetHashCode() |
Служит хэш-функцией по умолчанию. (Унаследовано от Object) |
GetObjectData(SerializationInfo, StreamingContext) |
При переопределении в производном классе задает объект SerializationInfo со сведениями об исключении. (Унаследовано от Exception) |
GetType() |
Возвращает тип среды выполнения текущего экземпляра. (Унаследовано от Exception) |
MemberwiseClone() |
Создает неполную копию текущего объекта Object. (Унаследовано от Object) |
ToString() |
Создает и возвращает строковое представление текущего исключения. (Унаследовано от Exception) |
События
SerializeObjectState |
Является устаревшей.
Возникает, когда исключение сериализовано для создания объекта состояния исключения, содержащего сериализованные данные об исключении. (Унаследовано от Exception) |