이 표현에는 '단위'유형이 있어야하지만 유형의 'ConsoleKeyInfo'가 있습니다.

StackOverflow https://stackoverflow.com/questions/324947

문제

F# 콘솔 응용 프로그램에서 일시 중지하고 싶었으므로 다음을 썼습니다.

Console.readkey ()

그러나 이것은 경고를줍니다. This expression should have type 'unit', but has type 'ConsoleKeyInfo'.

이것을 해결하려면 어떻게해야합니까?

도움이 되었습니까?

해결책

해결책:

Console.ReadKey() |> ignore

설명: Console.ReadKey() 'ConsolekeyInfo'유형의 객체를 반환하지만 반환 값을 무엇이든 할당하지 않고 명령문으로 사용하고 있습니다. 따라서 F#는 가치를 무시하고 있다고 경고합니다. ignore 모든 유형을 취하고 아무것도 반환하지 않습니다. 다음과 같이 정의 할 수 있습니다.

let ignore _ = ()
라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top