Explication détaillée de la portée de la variable C# : pourquoi un exemple de code est-il compilé et transmis, mais l'autre échoue-t-il en raison de la portée de la variable ?
Ce qui suit explique les règles de portée des variables C# qui font que les résultats de compilation de ces deux exemples de code sont différents.
Exemple de code 1 : Échec de la compilation
Dans le premier exemple de code, la première déclaration de la variable i (int i=10; // Point1) dans la boucle for provoque une erreur de compilation. En effet, la variable i a été déclarée dans la méthode contenant la boucle. La spécification C# stipule que plusieurs éléments portant le même nom ne sont pas autorisés à exister dans l'espace de déclaration de variable locale.
De plus, la deuxième référence à objX en dehors de la boucle for (var objX = new OtherClassOfMine(); // Point2) provoque également une erreur de compilation. En effet, la variable objX a été déclarée dans la boucle for et selon la spécification C#, un nom simple tel que objX utilisé dans un bloc imbriqué doit faire référence à la même entité dans le bloc.
Exemple de code 2 : Compilation réussie
Dans le deuxième exemple de code, les deux boucles for déclarent les variables i et objX dans leurs blocs respectifs. Étant donné que chaque bloc utilise son propre ensemble de déclarations de variables, il n'y a pas de chevauchement dans les noms ou les portées des variables et le code est compilé avec succès.
Résumé :
L'exemple de code 1 viole les règles de l'espace de déclaration des variables et déclare plusieurs variables portant le même nom dans la même portée. L'exemple de code 2 évite ce problème en déclarant les variables dans des blocs séparés. Comprendre ces règles de portée est crucial pour écrire du code C# correct et maintenable.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!