开发者

Copying fields in OCaml

I have a very basic question regarding OCaml records. Suppose I have a record defined:

type r = {a: int; b: int; c: int}
let x = {a=3; b=8; c=2}

Now, suppose I want to create a new record which has all fields equal to x but which has c=4. I could write:

let y = {a=3; b=8; c=4}

but this is annoying because there's not need to re-write a=3 and b=8. I could also write:

let y = {a=x.a开发者_如何学运维; b=x.b; c=4}

but this is still not good if the record has many fields. Is there any way of writing something like:

let y = {x with c=4}

or something of the sort?


yeah, and that's the exact syntax.

let y = {x with c=4}
0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜