Lokaler Typrückschluss
Visual Basic 2008 erlaubt, dass Typen auch aufgrund ihrer ersten Zuweisung festgelegt werden. Ganz eindeutig wird das beispielsweise an der Zuweisung
Dim blnValue = True
Wenn Sie einer primitiven Variable den Wert True zuweisen und dazu noch Typsicherheit definiert ist, dann muss es sich bei der Variablen einfach um den boolschen Datentyp handeln. Genau so ist das bei
Dim strText = "Eine Zeichenkette.“
strText muss eine Zeichenkette sein – das bestimmt die Zuweisung. Anders ist es bei numerischen Variablen. Hier muss man wissen, dass durch Zuweisung einer ganzen Zahl an eine bislang noch nicht typbestimmte Variable, der Integer-Typ definiert wird, durch Zuweisung einer Fließkommazahl der Double-Typ. Doch diese Standardtypen von Konstanten gab es vorher schon – letzten Endes bestimmen die Konstanten mit ihren Typliteralen, welchen Typ sie darstellen.
Dim einInteger = 100 ' Integer, ganze Zahl definiert Integerkonstante
Dim einShort = 101S ' Short, weil das Typliteral S eine Short-Konstante bestimmt
Dim einSingle = 101.5F ' Single, weil das Typliteral F eine Single-Konstante bestimmt
Lokaler
Typrückschluss funktioniert übrigens nur auf Prozedurebene, nicht auf Klassenebene (deswegen auch die Bezeichnung
»lokaler« Typrückschluss).
Gesteuert wird der lokale Rückschluss übrigens durch Option Infer, die als Parameter Off oder On übernimmt (von engl. Inference, etwa: der Rückschluss). Standardmäßig ist der lokale Typrückschluss eingeschaltet.
Sie können sie also durch die entsprechende Anweisung
Option Infer Off
direkt am Anfang der Codedatei eben nur für die Klassen und Module dieser Codedatei oder aber global für das ganze Projekt ausschalten (oder eben anschalten).
Typrückschluss für Typparameter bei Generics
Im Rahmen von Generics kann Typrückschluss dazu verwendet werden, den konkreten Typ einer generischen Klasse durch den Typ eines übergebenen Parameters zu bestimmen. Der eigentliche Typ der generischen Klasse muss dann nicht gesondert angegeben werden, weil er sich eben aus den übergebenen Argumenten ergibt. Mehr über Typrückschluss für Typparameter bei Generics erfahren Sie in Kapitel 7.
Generelles Einstellen von Option Infer, Strict, Explicit und Compare
Um Einstellungen von Option Infer, aber auch für Option Strict (Typsicherheit),
Option Explicit (Deklarationszwang von Variablen) und Option Compare
(Vergleichsverhalten) für ein ganzes Projekt global durchzuführen, öffnen Sie
das Kontextmenü des Projektes (nicht der Projektmappe!) im
Projektmappen-Explorer und wählen den Menüpunkt Eigenschaften aus. Auf der
Registerkarte Kompilieren finden Sie Aufklapplisten für jede der genannten
Optionen.

Abbildung 3.3 Im Eigenschaftendialog des Projektes stellen Sie das Option XXX-Verhalten auf der Registerkarte Kompilieren
projektglobal ein
|