Frage

In C # ist es eine Möglichkeit, eine statische Variable in einem Verfahren wie VB.Net?

zu setzen
Static myCollection As Collection
War es hilfreich?

Lösung

  

Warum nicht C # Unterstützung statische Methode   Variablen?

     

Frage: In C ++ ist es möglich, ein schreiben   statische Methode variabel und haben ein   Variable, die nur zugegriffen werden kann,   von der Innenseite des Verfahrens. C # nicht   bieten diese Funktion. Warum?

     

A: Es gibt zwei Gründe, C # nicht   haben diese Funktion.

     

Als erstes ist es möglich, fast zu bekommen   der gleiche Effekt durch eine mit   Klasse-Ebene statisch, und das Hinzufügen von Verfahren   Statik würde erfordern eine erhöhte   Komplexität.

     

Zweitens Methode Ebene Statik sind   etwas berüchtigt für die Entstehung   Probleme, wenn Code aufgerufen wird   wiederholt oder von mehreren Threads,   und da die Definitionen sind in der   Methoden, es ist schwieriger, das zu finden,   Definitionen.

     

- Msdn c # faq

Andere Tipps

Nein ist es nicht, aber wie ist das anders, die dann eine statische Variable auf Klassenebene?

Eigentlich, wenn Sie schauen darüber, wie geteilt umgesetzt wird, ist es ein Compiler Trick, der auf der Klasse ein statisches Feld erzeugt.

Das nächste, was zu VB.NET Static ist ein Feld im aktuellen Typ zu erstellen. Anders als die C # hat keine Entsprechung.

Nein, das CLR nicht unterstützt dies und VB.NET Resorts Tricks Compiler es zu ermöglichen. Ugh.

Ich bin mir ziemlich sicher, dass die C # entspricht const: also:

public const Collection myCollection = new Collection();

Ich bin nicht allzu vertraut mit VB.NET, so konnte ich außerhalb der Basis, aber das können Sie eine Variable, die nicht geändert werden kann.

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