Capisco che il seguente codice C#:C# Compilato a CIL
var evens = from n in nums where n % 2 == 0 select n;
compila a:
var evens = nums.Where(n => n % 2 == 0);
Ma cosa vuol dire che si compila a questo? Avevo l'impressione che il codice C# fosse compilato direttamente in CIL?
Ma nel libro di Bart De Smet "C# 4.0 Unleashed", a pagina 921, dice: "e in effetti viene compilato nella precedente sintassi". Dichiara esplicitamente che il primo viene compilato nel secondo. –
@ user2063755: Potrebbe essere un errore nella terminologia. È mia opinione (che potrebbe anche essere imperfetta, ovviamente) che il primo venga tradotto in quest'ultimo come una fase di pre-compilazione. Quindi, come parte del processo di compilazione, il primo diventa il secondo e quindi il tutto viene compilato in CIL. – David
grazie, ho corretto l'errore nella mia domanda. –