Condividi tramite


Eccezioni generate dal compilatore (Guida per programmatori C#)

Alcune eccezioni vengono generate automaticamente da Common Language Runtime di .NET Framework quando si verificano errori durante l'esecuzione di operazioni di base. Nella tabella riportata di seguito sono elencate queste eccezioni e le relative condizioni di errore.

Eccezione

Descrizione

ArithmeticException

Classe base per eccezioni che si verificano durante operazioni aritmetiche, quali DivideByZeroException e OverflowException.

ArrayTypeMismatchException

Generata quando una matrice non è in grado di archiviare un dato elemento perché il tipo effettivo dell'elemento è incompatibile con il tipo effettivo della matrice.

DivideByZeroException

Generata quando si tenta di dividere un valore integer per zero.

IndexOutOfRangeException

Generata quando si tenta di indicizzare una matrice e l'indice è inferiore a zero o esterno ai limiti della matrice.

InvalidCastException

Generata in caso di errore di una conversione esplicita di un tipo di base in un'interfaccia o in un tipo derivato in fase di esecuzione.

NullReferenceException

Generata quando si tenta di fare riferimento a un oggetto il cui valore è null.

OutOfMemoryException

Generata quando il tentativo di allocare memoria utilizzando l'operatore new ha esito negativo. Indica che la memoria disponibile per Common Language Runtime è esaurita.

OverflowException

Generata in caso di overflow di un'operazione aritmetica in un contesto checked.

StackOverflowException

Generata quando lo stack di esecuzione si è esaurito in seguito a un numero eccessivo di chiamate a metodi in sospeso. È in genere indicativo di ricorsione molto profonda o infinita.

TypeInitializationException

Generata quando un costruttore statico genera un'eccezione e non esiste alcuna clausola catch compatibile per intercettarla.

Vedere anche

Riferimenti

Eccezioni e gestione delle eccezioni (Guida per programmatori C#)

Gestione delle eccezioni (Guida per programmatori C#)

try-catch (Riferimenti per C#)

try...finally (Riferimenti per C#)

try...catch...finally (Riferimenti per C#)

Concetti

Guida per programmatori C#