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
331 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!

source:php.cn
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