F # equivalente de la C # 'objeto' palabra clave
Pregunta
Estoy tratando de puerto de un c existente # a F # y que estoy consiguiendo pegado en portar este c # línea:
public object myInnerOject
Solución
En C # object
es sólo un nombre de tipo en referencia a System.Object
. En F #, puede utilizar ya sea el nombre completo o un .NET obj
tipo de alias.
Ahora, con respecto a una declaración de campo - hay varias formas de escribir que, dependiendo del contexto. Además, es una buena práctica para inicializar todos los campos en F #, por lo que sería útil para ampliar el contexto de su código.
Sin embargo, puede escribir lo siguiente:
type A() =
let mutable (myInnerObj:obj) = null
Esto crea un campo myInnerObj
privada de tipo System.Object
inicializado a null
, que es mutable lata se puede asignar más tarde (myInnerObj <- new Random()
, por ejemplo). Solía ??ejemplo con el campo privado, ya que los campos públicos generalmente se desaniman en .NET.
Otros consejos
@Tomas es correcto. También es posible que desee comprobar fuera de estos blogs: