Compilerfehler CS0819
Implizit typisierte Variablen dürfen nicht mehrere Deklaratoren aufweisen.
In expliziten Typdeklarationen sind mehrere Deklaratoren, aber nicht mit implizit typisierten Variablen erlaubt.
So beheben Sie diesen Fehler
Drei Optionen stehen zur Verfügung:
- Wenn die Variablen denselben Typ aufweisen, verwenden Sie explizite Deklarationen.
- Sie sollten die Deklaration und Wertzuweisung jeder implizit typisierten lokalen Variablen in einer separaten Zeile vornehmen.
- Deklarieren Sie eine Variable mit der Syntax für die Tupeldekonstruktion. Hinweis: Diese Option funktioniert nicht innerhalb einer
using
-Anweisung, daIDisposable
vonTuple
nicht implementiert wird.
Beispiel 1
Durch den folgenden Code wird der Fehler CS0819 ausgelöst:
// cs0819.cs
class Program
{
public static void Main()
{
var a = 3, b = 2; // CS0819
// First correction option.
//int a = 3, b = 2;
// Second correction option.
//var a = 3;
//var b = 2;
// Third correction option.
//var (a, b) = (3, 2);
}
}
Beispiel 2
Durch den folgenden Code wird der Fehler CS0819 ausgelöst:
// cs0819.cs
class Program
{
public static void Main()
{
using (var font1 = new Font("Arial", 10.0f),
font2 = new Font("Arial", 10.0f)) // CS0819
{
}
// First correction option.
//using (Font font1 = new Font("Arial", 10.0f),
// font2 = new Font("Arial", 10.0f))
//{
//}
// Second correction option.
//using (var font1 = new Font("Arial", 10.0f)
//{
// using (var font2 = new Font("Arial", 10.0f)
// {
// }
//}
}
}
Siehe auch
Zusammenarbeit auf GitHub
Die Quelle für diesen Inhalt finden Sie auf GitHub, wo Sie auch Issues und Pull Requests erstellen und überprüfen können. Weitere Informationen finden Sie in unserem Leitfaden für Mitwirkende.