Imagino la capacidad de escribir código fluido que agrega significado a los números dentro de las bases de código. Supongamos que quiere un número para representar una distancia en millas. Usted tendría algo como:Método de extensión para Int32 en C#
Uso:
var result = myMethod(100.Miles());
Creo que esto sería mucho más fácil de leer que simplemente pasando en el int, además de que presumiblemente podría aplicar la comprobación de límites al tipo de Miles.
método de extensión y estructura aplicación:
static class IntExtensions
{
public static Miles(this int i) { get { return new Miles { Count = i }; } }
}
public struct Miles
{
public int Count { get; private set; } //optionally perform bounds checking
}
¿Sería tal idea sea útil, o es demasiado tarde de un viernes caliente?
Editar: Sí, no se ve tan bien sin propiedades de extensión ... Disculpas por el código inválido apresurado. Sólo era una idea.
Su método de extensión y su 'definición de clase es incorrecta. –
¿Cómo imaginas usar esto? ¿Agregar cosas para todos los tipos de unidades? 100.Miles() * 2.43.Kilograms()/454.MoonCycles()? – simendsjo
quiere decir que "envision" no "prevé", y aunque puede ser genial para su implementación singular, no tendré nada de eso en mi aplicación financiera. Quiero .Dollars y .Euros. – StingyJack