Frage

Ist Using Namespace; mehr Speicher verbrauchen?

Im Moment arbeite ich an einer mobilen Anwendung, und ich war nur neugierig, wenn diese nicht benötigt mit Aussagen, dass Visual Studio Orte, wenn eine Klasse meiner Anwendung auszuführen benötigen einige zusätzliche Speicher machen zu schaffen.

War es hilfreich?

Lösung

Um es einfach auszudrücken: no.

Diese Aussagen sind nicht in irgendeiner Form von IL übersetzt. Sie sind nur Shortcuts (hässlich!) Voll qualifizierten Typnamen zu vermeiden. Aber, wenn Sie mit VS2008 und / oder R # können Sie nicht verwenden entfernen automagically.

Andere Tipps

Namespaces sind eine Kompilierung-nur-Funktion von C # mit denen Sie Zeit während der Entwicklung zu sparen. Die using Richtlinien werden vom Compiler verwendete Stenografie Typnamen im Code zu suchen.

Im Grunde jedes Mal, wenn die Compiler eine Typname in Ihrem Code treffen, dass es nicht wissen, dass es jede using Richtlinie nimmt und prepends sie auf den Namen des Typs und sieht, wenn diese vollständig qualifizierten Namen aufgelöst wird.

Wenn Sie Anwendung ist die Namensräume zusammengestellt und die using Richtlinien sind als IL gegangen ist sie nicht brauchen.

Wenn Sie mit dem „Gedächtnis“ Sie bedeuten: „Ich muss daran erinnern, warum ich diese mit Anweisungen oben an erster Stelle setzen“, dann ja.

Aber, nein, nicht in dem Sinne, meinen Sie. .NET-Assemblies sind On-Demand-Regel geladen, so dass Sie jede Leistungseinbuße nicht entstehen durch diese zusätzliche Aussagen haben. Jedoch aus Gründen der Wartbarkeit, möchten Sie sie entfernen.

hier ist die Microsoft Informationen über die "Verwendung" Schlüsselwort in diesem Zusammenhang: http : //msdn.microsoft.com/en-us/library/sf0df423.aspx . es bietet im Grunde eine Alternative der vollständig qualifizierten Namen auf einer Baugruppe zu verwenden, aber es nicht tatsächlich importieren oder schließt die Baugruppen im Speicher mit dem bestimmten Schlüsselwort.

Nein, es funktioniert nicht. Es ist einfach eine Abkürzung, damit Sie nur die Typenbezeichnung verwenden,

String

Im Gegensatz zu den Namespace-Typnamen:

System.Text.StringBuilder

In der Datei, in der die using-Anweisung deklariert wird.

Nein, es wird nur der Compiler machen ein klein wenig langsamer laufen:)

Es ist nicht. Es wird verwendet, so dass Sie nicht das Objekt definieren müssen Sie Ihren vollständigen Namen verwenden. Statt System.IO.File können Sie einfach tun, Datei, wenn Sie System.IO verwenden.

Es ist nicht in den Speicher geladen, bis Sie tatsächlich das Objekt erstellen. Im Gegensatz zu C ++ wird die gesamte Bibliothek nicht importiert werden, weil das .NET Framework auf dem Zielcomputer installiert ist und in dem GAC geladen und Ihre benutzerdefinierten DLL sind im Ordner ist des Anwendungsordners.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top