Maison >développement back-end >C++ >Les directives C # «Utilisation» devraient-elles être à l'intérieur ou à l'extérieur des espaces de noms?
La meilleure position de l'instruction: est-ce à l'intérieur de l'espace de dénomination ou de l'espace de nom?
using
Lors de l'écriture du code C #, le placement des instructions est souvent déroutant, surtout lorsque Stylecop suggère de les mettre dans l'espace de nom. Bien que cela semble être stipulé au hasard, il existe de légères différences entre les deux méthodes.
Jetons un coup d'œil à un exemple.
using
, le contenu est le suivant: File1.cs
<code class="language-csharp">using System; namespace Outer.Inner { class Foo { static void Bar() { double d = Math.PI; } } }</code>Le compilateur donnera la priorité à
d'espace nommé au lieu des instructions externes File2.cs
, provoquant une référence à la défaillance
<code class="language-csharp">namespace Outer { class Math { } }</code>
Cependant, si nous mettons l'instruction Outer
dans l'instruction d'espace de nom, comme indiqué ci-dessous: using
System.Math
, puis recherchera l'espace de dénomination using
pour analyser correctement la référence de
<code class="language-csharp">namespace Outer.Inner { using System; class Foo { static void Bar() { double d = Math.PI; } } }</code>
Il convient de noter que ce comportement est également applicable à l'espace de dénomination imbriqué, et le compilateur recherche toujours la couche la plus intérieure de l'espace de dénomination. Par exemple, si est situé dans System
, l'ajout de Outer
dans le System.Math
dans la position d'instruction
. Foo
namespace Outer
Par conséquent, afin d'éviter de nommer les conflits et d'assurer l'exactitude du code, il est recommandé de mettre l'instruction File2
dans l'espace de nom. Outer.Math
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!