Pregunta

En C #, ¿hay alguna manera de poner una variable estática en un método como VB.Net?

Static myCollection As Collection
¿Fue útil?

Solución

  

¿Por qué C # no admite el método estático?   variables?

     

P: En C ++, es posible escribir un   método estático variable, y tener un   variable a la que solo se puede acceder   desde dentro del método. C # no   Proporcionar esta característica. ¿Por qué?

     

A: Hay dos razones por las que C # no   tener esta característica.

     

Primero, es posible obtener casi   el mismo efecto al tener un   estática a nivel de clase y método de adición   la estática requeriría un aumento   complejidad.

     

Segundo, las estadísticas de nivel de método son   algo notorio por causar   problemas cuando se llama código   repetidamente o de múltiples hilos,   y dado que las definiciones están en el   métodos, es más difícil encontrar el   definiciones.

     

- msdn c # faq

Otros consejos

No, no lo hay, pero ¿en qué se diferencia esto de tener una variable estática a nivel de clase?

En realidad, si observa cómo se implementa lo compartido, es un compilador truco que crea un campo estático en la clase.

Lo más parecido a de VB.NET Estático es crear un campo en el tipo actual. Aparte de eso, C # no tiene equivalente.

No, el CLR no admite esto, y VB.NET recurre a trucos de compilación para permitirlo. Ugh.

Estoy bastante seguro de que el equivalente de C # es const : por lo tanto:

public const Collection myCollection = new Collection();

No estoy muy familiarizado con VB.NET, por lo que podría estar fuera de la base, pero eso le permitirá establecer una variable que no se puede cambiar.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top