Di default in VS2008 per VB 9.0 è attiva l’inferenza dei tipi locali (Local Type Inference) .
Questa opzione permette di dichiarare una variabile senza specificarne il tipo e lasciarlo quindi determinare per inferenza al compilatore.
Option Infer On
Se aprite dei progetti in VS2008 creati con versioni precedenti 2005/2003 l’opzione è invece disabilitata.
Option Infer Off
Vediamo un esempio :
' Dichiaro la variabile esplicitamente
Dim i As Integer = 1
' Dichiaro la variabile per inferenza
Dim i = 1
È possibile utilizzare l'inferenza dei tipi anche per determinare il tipo di una variabile di controllo del ciclo :
' la variabile i non è stata dichiarata esplicitamente
For i = 1 To 10
'...
Next
L'inferenza dei tipi può essere applicata solo per variabili locali non statiche e non per determinare tipi,proprietà e funzioni di classi.
Personalmente dichiaro sempre esplicitamente le variabili, per i seguenti motivi :
1. I problemi vengono identificati prima dell'esecuzione.
2. La memoria viene allocata con precisione.
3. Non si perde l'intellisense.
4. Migliora le prestazioni.
L'inferenza dei tipi è comunque fondamentale per comprendere il funzionamento LINQ, altra importante novità di VS2008.
Stay tuned