質問

F#では、私はこれを行うことができます

type coord = float * float  //Type for a 2D-float-tupple
let myDepthCurve1 = { coords = [(1., 2.); (3., 4.)]; depth = 9.4 }

が、私はこれを行うことはできません。

type coord = { longitude : float; latitude : float } //Type for a 2D-float-record
let myDepthCurve1 = { coords = [(longitude = 1., latitude = 2.); (longitude = 3., latitude = 4.)]; depth = 9.4 }

これはCOORDタイプのレコードのフィールドが標識されたとき、私は一度に私のdepthurveを作成することができないというのは本当ですか?

役に立ちましたか?

解決

あなたは{}ない、レコードに()を使用する必要があります。すなわち:ます。

type coord = { longitude : float; latitude : float } //Type for a 2D-float-record
let myDepthCurve1 = {
     coords = [ { longitude = 1.; latitude = 2. };
                { longitude = 3.; latitude = 4. }];
     depth = 9.4 }

他のヒント

私は、あなたが「インライン」のレコード表現を構築するために中括弧の代わりに括弧を使用した場合、それは大丈夫だと思います。

このようなタイプを想定します:

型X = {COORDS:COORDリスト。深さ:フロート} ;;

あなたはこれを書くことができます:

せmyDepthCurve1 = {COORDS = [{経度= 1;緯度= 2}。                                    {経度= 3 .;緯度= 4}]。      深さ= 9.4} ;;

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top