2011-07-12 13 views
12

Sé que esta es una pregunta estúpida. Puedo crear una clase vacía como la siguiente en C#.Cómo crear una clase vacía en F #

class Customer{} 

Pero, ¿cómo puedo hacer esto en F #? Este es mi intento

type Customer() = 

    let _ =() 

¿Cuál es la forma correcta?

Respuesta

18

Trate

type Customer() = class end 

Normalmente, puede dejar las class y end fichas implícito y el compilador infiere su presencia al comienzo y al final de la definición de la clase, pero si la clase está completamente vacío que necesitaremos para especificarlos. Del mismo modo, puede usar struct end y interface end para generar estructuras e interfaces.

+0

Intento tipo Cliente = fin de clase, sin "()", funciona para mí. –

+2

@Fred: sí, eso también funcionará, pero luego tu clase no tendrá ningún constructor accesible dentro de F #. – kvb

+0

tiene razón, necesita tener el "()" allí, necesita ver el IL para ver cómo funciona :). –

7

Otra manera de escribir una clase vacía (con un constructor sin parámetros), y no estoy seguro de cómo la IL resultante se vería comparación con la solución de @ kvb si es diferente en absoluto, es simplemente

type Customer() = do() 
7

embargo De otra manera:

type Customer = 
    new() = {} 
Cuestiones relacionadas