2010-09-03 15 views
5

var keyword obtiene el tipo en tiempo de ejecución o compilación?var tiempo de ejecución de la palabra clave o tiempo de compilación?

o depende?

+0

Esto se ha discutido en otras preguntas, incluyendo [C# 'var' vs rendimiento de tipo específico] (http://stackoverflow.com/questions/356846/c-var-vs-specific-type-performance) y [ ¿Cuál es la diferencia entre dynamic (C# 4) y var? ] (http://stackoverflow.com/questions/961581/whats-the-difference-between-dynamicc-4-and-var). –

+3

no aparece en las sugerencias amigo. implementar un mejor algoritmo para eso. No soy telepático. – DarthVader

+0

Y no soy un desarrollador SO, además no voté para cerrar. Agregué los enlaces para que la gente pudiera ir allí para obtener más información. –

Respuesta

15

Así de simple: tiempo de compilación

var no es un tipo. El tipo real se descifra en tiempo de compilación.

var variables que también se conocen como Implicitly Typed Local Variables (C# Programming Guide)

+0

he estado tratando de encontrar un caso que el tipo no se sepa hasta el tiempo de ejecución, ¿es eso posible? – DarthVader

+0

@user, no. Si el compilador no puede determinar el tipo, la compilación fallará. –

+2

Debería verificar la nueva palabra clave 'dynamic' en C# 4.0. http://msdn.microsoft.com/en-us/library/dd264736.aspx –

4

tipo var pone en compile time.

Var es una variable local implícitamente escrito se escribe firmemente al igual que si se hubiera declarado el tipo de sí mismo, pero el compilador determina el tipo

var i = 10; // implicitly typed 
int i = 10; //explicitly typed 

http://msdn.microsoft.com/en-us/library/bb383973.aspx

+0

Si va a agregar citas de la página de MSDN, también puede vincular a ella. –

1

El var keyword se escribe de manera implícita. Esto significa que está fuertemente tipado, pero el compilador determina el tipo.

Cuestiones relacionadas