Leggere in inglese

Condividi tramite


Errore del compilatore CS1643

Non tutti i percorsi del codice restituiscono un valore in 'method' di tipo 'type!'

Questo errore si verifica se il corpo di un delegato non ha un'istruzione return oppure contiene un'istruzione return di cui il compilatore non è in grado di verificare il raggiungimento. Nell'esempio seguente il compilatore non tenta di prevedere il risultato della condizione di diramazione per verificare che il blocco di metodo anonimo restituisca sempre un valore.

Esempio

L'esempio seguente genera l'errore CS1643:

// CS1643.cs  
delegate int MyDelegate();  
  
class C  
{  
    static void Main()  
    {  
        MyDelegate d = delegate  
        {                 // CS1643  
            int i = 0;  
            if (i == 0)  
                return 1;  
        };  
    }  
}