0

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タイプのレコードのフィールドにラベルが付けられていると、一度に深度曲線を作成できないというのは本当ですか?

4

3 に答える 3

8

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

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 }
于 2009-07-27T21:39:02.347 に答える
1

「インライン」レコード式を作成するために括弧の代わりに中括弧を使用した場合は問題ないと思います。

于 2009-07-27T21:39:20.647 に答える
1

次のようなタイプを想定します。

type x = { coords : coord list ; 深さ:フロート};;

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

let myDepthCurve1 = { 座標 = [{経度 = 1.; 緯度 = 2.}; {経度 = 3.; 緯度 = 4.}]; 深さ = 9.4 };;

于 2009-07-27T21:44:38.140 に答える