Heim >Backend-Entwicklung >C++ >Sollten die Verwendung von Direktiven in C#innerhalb oder externe Namespaces platziert werden?
Die Platzierung der Verwendung von Anweisungen in C#: Berücksichtigung von Faktoren
Bei der Analyse des C# -Codes mit StyleCop erhalten Sie möglicherweise eine Warnung vor dem Platzieren der Verwendung des Anweisungen im Namensraum. Die Frage ist: Gibt es einen technischen Grund dafür?
Der Einfluss der Platzierung
Die Verwendung der Verwendung der Anweisung innerhalb oder außerhalb des Benennungsraums kann das Codeverhalten subtil ändern. Betrachten Sie die folgende Codestruktur:
Wenn Sie eine andere Datei (File2.cs) hinzufügen, hat es den folgenden Inhalt:
<code class="language-csharp">// File1.cs using System; namespace Outer.Inner { class Foo { static void Bar() { double d = Math.PI; } } }</code>
Wenn sich die Verwendung der Verwendung außerhalb des Namensraums befindet, gibt der Compiler den Vorrang vor. Math anstelle von System.math, da das Fehlen von PI -Mitgliedern in der Außenseite eine Codeunterbrechung verursacht.
<code class="language-csharp">// File2.cs namespace Outer { class Math { } }</code>Platzierung des Namens des Namensraums
Durch die Platzierung der Verwendung der Verwendung in den Namensraum ändert sich die Reihenfolge des Compilers. System.Math wird von out.math bevorzugt, das das Problem des Code -Interrupts löst.
Namensraum verschachtelt und platziert
<code class="language-csharp">// File1b.cs namespace Outer.Inner { using System; class Foo { static void Bar() { double d = Math.PI; } } }</code>Zusätzlich suchen Sie nach einem Anweisungen nach dem innersten Speicherplatz für den innersten Namen. Wenn FOO zum äußeren Namensraum (nicht äußerer) gehört, wird das Hinzufügen von Outf.Math zu Datei2 Datei1 zerstören, unabhängig von der Platzierung der Verwendung des Verwendungsanweises.
Schlussfolgerung
Obwohl dies möglicherweise kein wichtiges technisches Problem ist, kann das Einlegen der Verwendung der Verwendung im Namen im Namensraum verbessert werden, indem die Priorität der Analyse der Mitglieder geklärt wird, um die Wartung des Codes zu verbessern. Es kann auch sicherstellen, dass Ihr Code mit Namensräumen in Konflikt steht, die zu versehentlichem Unterbrechung führen können.
Das obige ist der detaillierte Inhalt vonSollten die Verwendung von Direktiven in C#innerhalb oder externe Namespaces platziert werden?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!