나는 나는 F # 대화 형으로이 입력으로 12F # 대화 형에서이 옵션을 허용하지 않는 이유는 무엇입니까?
type MyCell(n:int) = let mutable data = n + 1 do printf "Creating MyCell(%d)" n member x.Data with get() = data and set(v) = data <- v member x.Print() = printf "Data %d" n override x.ToString() = sprintf "(Data %d)" data static member FromInt(n) = MyCell(n)
개의 질문이 마음에 와서 페이지에서 토마스 Petricek의 기사를 기반으로 샘플을 F # CTP 1.9.7.8를 사용하여 실행하고 있습니다 :
- 아래 그림 1과 같은 오류 메시지가 나타나는 이유는 무엇입니까?
- ,
x.ToString()
옆에=
이 있는데 왜member x.Data
에없는 이유는 무엇입니까? x
은 어디에서 왔습니까? 왜MyCell
타입이 정의 될 때 거기에 있을까요? 이렇게하면x.Print()
,x.ToString()
및x.Data
과 같이 '객체'를 어떻게 참조 할 수 있습니까?
> type MyCell(n:int) = - let mutable data = n + 1 type MyCell(n:int) = -----^^^^^^^ stdin(6,6): error FS0547: A type definition requires one or more members or othe r declarations. If you intend to define an empty class, struct or interface, the n use 'type ... = class end', 'interface end' or 'struct end'. -
그림 1.
감사합니다, 안부, 톰.
> type MyCell(n:int) =
- let mutable data = n + 1
는 들여 쓰기를 존중되지 않습니다
@kvb : 멋지다! 그 해답을 가져 주셔서 감사합니다! :) +1 ... 짧고, 간단하고 달콤한! :) – t0mm13b