Si tengo una clase C# con la conversión implícita para doblar, así:¿Hay alguna forma de usar operadores implícitos C# de F #?
public class Parameter
{
private double _value;
public Parameter(double value) { _value = value }
public static implicit operator double(Parameter p) { return _value; }
}
F # no me quiere tratar de usarlo como si fuera un float
:
let a = Parameter(4.0)
let b = Parameter(2.0)
let c = a * Math.Sin(b) <-- 'expected float, here Parameter'
¿Hay cualquier forma de hacer esto (supongo que no, basado en this question/answer), y si no, ¿cuál sería una solución decente?
Pienso: puedo agregar una propiedad de 'Valor' y usar eso en todas partes, no es hermoso, pero menos feo que cualquier otra cosa que pueda pensar ... – Benjol
Lamentablemente no ... http: //stackoverflow.com/questions/1686895/is-there-an-equivalent-to-creating-ac-sharp-implicit-operator-in-f –