En estos días me preguntaba un usuario si hay diferencias cuando asignamos las variables de manera explícita o implícita? si alguna es mejor o lleva una ventaja sobre la otra?
Bueno, en respuesta a esto, la asignación de variables de forma implícita apareció desde la version 3 de CSharp .Net. Y produce algo de confusión a muchos, teniendo el temor que les ocurra en sus aplicaciones lo que ocurría o ocurre aún con Visual Basic, en cualquiera de sus versiones, antes que nada, tienen que considerar que CSharp es un lenguaje pensado y en su sintaxis se sacaron las malas practicas, así que no es el caso.
La manera de asignar estas variables es la siguiente:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 | // se compila como integer var i = 5; // equivalente explicito int i = 5; // se compila como string var s = "Hello"; // equivalente explicito string s = "Hello"; // se compilar como un array de integer var a = new[] { 0, 1, 2 }; // equivalente explicito int[] a = new int[] { 0, 1, 2 }; // se compila como IEnumerable // o IQueryable var expr = from c in clientes where c.Ciudad== "Asuncion" select c; // se compila como un tipo anonimo var anon = new { Name = "Terry", Age = 34 }; //se compila como una lista List var list = new List(); // equivalente explicito List list = new List(); |
Como ven da la impresión que es un tipo de dato variant, o que es flexible el tipo de dato que se le puede asignar (lo que producía sobrecarga de procesador para determinar su tipo de dato en tiempo de ejecución), pero no es así lo único que esto hace es que el tipo de dato sea asignado en el proceso de compilación dejándolo elegir el mejor tipo de dato. No produce ninguna otra diferencia, por lo tanto se puede decir que en la mayoría de los casos es opcional y aporta una comodidad sintáctica. Únicamente su uso es obligatorio en tipos de datos anónimos.
Articulos Relacionados:









en
en
en
en
Sin Comentarios aun, puedes tú ser el primero en comentar!
Deja tu Comentario