Подтвердить что ты не робот

F #: Это выражение должно иметь тип 'unit', но имеет тип 'ConsoleKeyInfo'

Это простой вопрос, но у меня возникли проблемы с поиском ответа, поскольку F # является настолько новым. Я просто хотел сделать паузу в консольном приложении F #, поэтому написал:

Console.ReadKey()

Но это дает предупреждение: это выражение должно иметь тип "unit", но имеет тип "ConsoleKeyInfo". Любая помощь будет принята с благодарностью.

Спасибо, - Ли

4b9b3361

Ответ 1

Решение:

Console.ReadKey() |> ignore

Объяснение: Console.ReadKey() возвращает объект типа "ConsoleKeyInfo", но вы используете его в качестве инструкции, не присваивая возвращаемое значение чему-либо. Поэтому F # предупреждает вас, что вы игнорируете значение. ignore принимает любой тип и ничего не возвращает. Его можно определить следующим образом:

let ignore _ = ()