Erreur du compilateur CS0819
Les variables implicitement typées ne peuvent pas avoir plusieurs déclarateurs.
L’utilisation de plusieurs déclarateurs est autorisée dans les déclarations de type explicite, mais pas dans les variables implicitement typées.
Vous disposez de trois options :
- Si les variables sont du même type, utilisez des déclarations explicites.
- Déclarez, puis affectez une valeur à chaque variable locale implicitement typée sur une ligne distincte.
- Déclarez une variable à l’aide de la syntaxe de déconstruction Tuple . Remarque : cette option ne fonctionnera pas à l’intérieur d’une instruction
using
, carTuple
n’implémente pasIDisposable
.
Le code suivant génère l’erreur CS0819 :
C#
// 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);
}
}
Le code suivant génère l’erreur CS0819 :
C#
// 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)
// {
// }
//}
}
}
Collaborer avec nous sur GitHub
La source de ce contenu se trouve sur GitHub, où vous pouvez également créer et examiner les problèmes et les demandes de tirage. Pour plus d’informations, consultez notre guide du contributeur.
Commentaires sur .NET
.NET est un projet open source. Sélectionnez un lien pour fournir des commentaires :