En C# se puede escribir:equivalente de Scala de los métodos de extensión de C#?
using System.Numerics;
namespace ExtensionTest {
public static class MyExtensions {
public static BigInteger Square(this BigInteger n) {
return n * n;
}
static void Main(string[] args) {
BigInteger two = new BigInteger(2);
System.Console.WriteLine("The square of 2 is " + two.Square());
}
}}
¿Cómo sería este sencillo extension method verá como en Scala?
Advertencia: mediante el uso de la nueva '' {...} sintaxis, que en realidad estás haciendo que el compilador para inferir un tipo estructural para el método 'richInt', significado que cualquier invocación de 'cuadrado' se hará usando reflexión (un asesino de rendimiento). Sería mejor definir una clase 'RichInt' que define' square' y se devuelve del método 'richInt'. –
@Daniel, ¿podría publicar el código que está describiendo? – OscarRyz
@Support Agregue 'clase RichInt (i: Int) {def square = i * i}' a 'MyExtensions' y ejecute' new RichInt (i) 'en el método' richInt'. –