F#: Esta expresión debería tener el tipo ''unidad'', pero tiene el tipo ''ConsoleKeyInfo''
functional-programming unit-type (1)
Esta es una pregunta simple, pero estoy teniendo problemas para rastrear una respuesta ya que F # es muy nueva. Solo quería hacer una pausa en una aplicación de consola F #, así que escribí:
Console.ReadKey ()
Pero esto da la advertencia: esta expresión debería tener el tipo ''unidad'', pero tiene el tipo ''ConsoleKeyInfo''. Cualquier ayuda sería muy apreciada.
Gracias, - Lee
Solución:
Console.ReadKey() |> ignore
Explicación: Console.ReadKey()
devuelve un objeto de tipo ''ConsoleKeyInfo'' pero lo está utilizando como una declaración sin asignar el valor de retorno a nada. Entonces F # le advierte que está ignorando un valor. ignore
toma cualquier tipo y no devuelve nada. Podría definirse así:
let ignore _ = ()