Excepciones generadas por el compilador

Algunas excepciones las inicia automáticamente el entorno de ejecución .NET cuando se producen errores de operaciones básicas. En la tabla siguiente se enumeran estas excepciones y sus condiciones de error.

Excepción Descripción
ArithmeticException Una clase base para las excepciones que se producen durante las operaciones aritméticas, como DivideByZeroException y OverflowException.
ArrayTypeMismatchException Se inicia cuando una matriz no puede almacenar un elemento determinado porque el tipo real del elemento es incompatible con el tipo real de la matriz.
DivideByZeroException Se inicia cuando se intenta dividir un valor entero entre cero.
IndexOutOfRangeException Se inicia cuando se intenta indexar una matriz y el índice es menor que cero o queda fuera de los límites de la matriz.
InvalidCastException Se inicia cuando se produce un error, en tiempo de ejecución, en una conversión explícita de un tipo base a una interfaz o a un tipo derivado.
NullReferenceException Se inicia cuando se intenta hacer referencia a un objeto cuyo valor es null.
OutOfMemoryException Se inicia cuando se produce un error al intentar asignar memoria con el operador new. Esta excepción indica que se ha agotado la memoria disponible para el entorno compatible con Common Language Runtime.
OverflowException Se inicia cuando se desborda una operación aritmética en un contexto checked.
StackOverflowException Se inicia cuando se agota la pila de ejecución por tener demasiadas llamadas a métodos pendientes. Normalmente, indica una recursividad muy profunda o infinita.
TypeInitializationException Se inicia cuando un constructor estático inicia una excepción y no existe una cláusula catch compatible para capturarla.

Vea también