Haskell에서는 .NET을 사용하여 문자열에서 Haskell 값을 만들 수 있습니다 read
.
Prelude> read "1" + 3
4
fst
첫 번째 요소를 얻는 데 사용할 수 있습니다.
Prelude> fst (1,2)
1
그러나 결합 read
하고 fst
첫 번째 요소를 얻으려면 오류가 발생합니다 .
Prelude> fst (read "(1,2)")
<interactive>:20:6:
Could not deduce (Read b0) arising from a use of ‘read’
from the context (Read a)
bound by the inferred type of it :: Read a => a
at <interactive>:20:1-18
The type variable ‘b0’ is ambiguous
뭐가 문제 야?
으로 read
다형성 기능이의 read "3" + 4
작품이 컴파일러는 당신이 원하는 알고 있기 때문에 Num
당신이 적용하기 때문 +
에 read "3"
컴파일러는 당신이 원하는 것을 알아낼 수없는 경우, 당신의 유형을 지정해야 read
다음과 같이 :
Prelude> let rd = read :: String->(Int,Int)
Prelude> rd "(1,2)"
이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.
침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제
몇 마디 만하겠습니다