Wichtige Visual Basic-Änderungen in Visual Studio 2012
In der folgenden Tabelle sind Änderungen aufgeführt, die dazu führen können eine Anwendung geändert haben, die in Visual Basic 2010 aus dem Kompilieren in erstellt wurde Visual Basic in Visual Studio 2012 und Änderungen möglicherweise das Laufzeitverhalten einer Anwendung.
Kategorie |
Problem |
Description |
---|---|---|
Typrückschluss |
In einer return-Anweisung, in der der Operand ein Arrayliteral ist, wird der Ablaufarraytyp aus der Funktionssignatur bestimmt, statt, im Arrayliteral abgeleitet werden. |
Vor diese Änderung können Sie ein Arrayliteral in die Stellen zurückgeben, die Sie nicht können, wie im folgenden Beispiel gezeigt:
Diese Änderung kann den Laufzeittyp eines Arrayliterals, das breiter als ist, was sie in Visual Basic 2010 war, wie im folgenden Beispiel gezeigt:
|
Lambda-Ausdrücke |
In einem For Each Ausdruck können Sie die Steuerelementvariable in einem Lambda-Ausdruck jetzt verwenden. |
Die Verwendung einer For Each Iterationsvariable in einem Lambda-Ausdruck verursacht nicht mehr eine Warnung zur Kompilierzeit und hat nicht mehr unerwartete Ergebnisse, wie im folgenden Beispiel veranschaulicht:
|
LINQ-Ausdrücke |
In einem For Each Ausdruck können Sie die Steuerelementvariable in einem LINQ-Ausdruck jetzt verwenden. |
Die Verwendung einer For Each Iterationsvariable in einem LINQ-Ausdruck verursacht nicht mehr eine Warnung zur Kompilierzeit und hat nicht mehr unerwartete Ergebnisse, wie im folgenden Beispiel veranschaulicht:
|
Überladungsauflösung |
Wenn zwei Überladungen mit Übereinstimmung der generischen Typparameter ein Aufrufer gleichwertig jedoch eine Überladung spezifischer ist, wird mehr bestimmte Überladung verwendet. |
Diese Bedingung hat einen Überladungsauflösungskompilierungsfehler in Visual Studio 2010.Im folgenden Beispiel verursacht die Process(theList) Zeile einen Kompilierungsfehler in Visual Studio 2010.In der aktuellen Version entspricht der Zeile die spezifischere Process Überladung der - Methode ab.
|
Siehe auch
Referenz
For Each...Next-Anweisung (Visual Basic)
Konzepte
Lambda-Ausdrücke (Visual Basic)
Neues bei Visual Basic in Visual Studio 2012