Menú de navegaciónMenú
Categorías

La mejor forma de Aprender Programación online y en español www.campusmvp.es

?id=9b41b459-44f1-4b52-a472-f943d9f38b3e

TRUCO: Cómo hacer una función genérica para conversión entre tipos

Variedad-Tipos

En la plataforma .Net es posible crear métodos y clases genéricas que, independientemente del tipo que utilicen, trabajen de la misma manera. En este artículo, nuestro tutor José M. Alarcón, se valdrá de dicha funcionalidad para mostrarnos cómo hacer una función genérica que sirva para realizar transformaciones entre dos tipos de datos. Dicho de otro modo, el objetivo de la nueva función es devolver el mismo valor que tenía la variable o referencia original pero con un tipo de dato diferente.

Algunos de vosotros a estas alturas estaréis pensando que, desde la primera versión de .Net, ya existe una función similar: el método ChangeType de la clase Convert. Sí pero no :) Este método posee varias sobrecargas, siendo la más comúnmente utilizada ChangeType(Object, Type). Ésta toma como primer parámetro el valor a convertir, y como segundo, una definición de tipo al cual queremos convertir el anterior.  Veámoslo con un sencillo ejemplo,

double d = 12;
int i = (int) Convert.ChangeType(d, typeof(int));

Como se aprecia en el código de ejemplo, la forma "genérica"  para pasar desde un double a un entero la sintaxis resulta un tanto liosa y difícil de leer. Además el método devuelve un objeto que hay que convertir en su tipo adecuado subyacente, lo cual nos está alejando de nuestro objetivo inicial: hacer una función genérica.

Llegados a este punto, ¿cómo encapsulas esto en un método? Si se te ocurre alguna solución estaremos encantados de publicarla, si no, siempre puedes recurrir a la que propone nuestro tutor en su blog.

Autora de la imagen de cabecera Marisa Pérez. Foto usada bajo licencia Creative Commons.

Fecha de publicación:
campusMVP campusMVP es la mejor forma de aprender a programar online y en español. En nuestros cursos solamente encontrarás contenidos propios de alta calidad (teoría+vídeos+prácticas) creados y tutelados por los principales expertos del sector. Nosotros vamos mucho más allá de una simple colección de vídeos colgados en Internet porque nuestro principal objetivo es que tú aprendas. Ver todos los posts de campusMVP
Archivado en: Lenguajes y plataformas

¿Te ha gustado este post?
Pues espera a ver nuestro boletín mensual...

Suscríbete a la newsletter

La mejor formación online para desarrolladores como tú

Agregar comentario

Los datos anteriores se utilizarán exclusivamente para permitirte hacer el comentario y, si lo seleccionas, notificarte de nuevos comentarios en este artículo, pero no se procesarán ni se utilizarán para ningún otro propósito. Lee nuestra política de privacidad.