Maison > développement back-end > C++ > Pourquoi un exemple de code C# se compile-t-il alors que l'autre échoue en raison d'une portée variable ?

Pourquoi un exemple de code C# se compile-t-il alors que l'autre échoue en raison d'une portée variable ?

Linda Hamilton
Libérer: 2025-01-12 14:24:44
original
387 Les gens l'ont consulté

Why Does One C# Code Sample Compile While the Other Fails Due to Variable Scope?

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!

Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal