Class F#类中的属性是否会使专用字段中使用的内存加倍?

Class F#类中的属性是否会使专用字段中使用的内存加倍?,class,memory,f#,Class,Memory,F#,F#类具有一个很好的特性,即参数自动成为不可变的私有字段。如果我想使一个这样的字段在外部可用,我可以在下面的代码中创建一个属性,如I: type MyClass (i: int list) = member this.I with get() = i member this.foo x = i.Head + x let mc = MyClass [0..10] mc.foo 10 // 10 mc.I // [0; 1; 2; 3; 4; 5; 6; 7; 8; 9; 10]

F#类具有一个很好的特性,即参数自动成为不可变的私有字段。如果我想使一个这样的字段在外部可用,我可以在下面的代码中创建一个属性,如
I

type MyClass (i: int list) =
    member this.I with get() = i
    member this.foo x = i.Head + x

let mc = MyClass [0..10]
mc.foo 10 // 10
mc.I // [0; 1; 2; 3; 4; 5; 6; 7; 8; 9; 10]
上面代码中的
I
是否是
I
所用内存量的两倍,或者它只是一个返回
I
值的函数


(当然,这仅在参数使用大量内存时才相关,上例中并非如此)

否:
i
作为私有字段存储在
MyClass
MyClass.I
是一个函数,其
get
函数返回所述字段的值


listNo:
i
作为私有字段存储在
MyClass
MyClass.I
是一个函数,其
get
函数返回所述字段的值

列表