gpt4 book ai didi

syntax - F# 中 Item 属性的类型

转载 作者:行者123 更新时间:2023-12-04 17:05:08 25 4
gpt4 key购买 nike

考虑接口(interface):

type IVector = 
abstract Item : int -> float

现在,让我们定义类:
type DenseVector(size : int) = 
let mutable data = Array.zeroCreate size

interface IVector with
member this.Item with get n = data.[n]

那么提供一种方法来改变密集向量的第 n 个条目呢?然后,将上面的代码修改为:
type DenseVector(size : int) = 
let mutable data = Array.zeroCreate size

interface IVector with
member this.Item with get n = data.[n]
and set n value = data.[n] <- value

但是,由于抽象方法 Item 的签名,我收到以下错误。在 IVector界面:

未找到与此覆盖对应的抽象属性。

那么, Item 的签名应该是什么?在 IVector ?

最佳答案

type IVector =  
abstract Item : int -> float with get, set

关于syntax - F# 中 Item 属性的类型,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3681901/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com