gpt4 book ai didi

ocaml 类对象

转载 作者:行者123 更新时间:2023-12-01 08:34:17 24 4
gpt4 key购买 nike

是什么

self: #Arakoon_client.client 

在这段代码中的意思,以及如何使用这样的对象

class remote_client ((ic,oc) as conn) =

object(self: #Arakoon_client.client)

最佳答案

在许多 OO 语言中,有一个关键字(C++ 中的 this)可以从其方法中引用对象。在 OCaml 中,您可以选择要用于引用对象的名称,方法是在 object 关键字之后给出它的名称(这里,他们选择了 self)。

在 OCaml 中,您还可以为类继承的父级命名:

class x = object (self)
inherit x_parent as parent
method print = parent#print; print_newline()
end

例如,这可用于使用祖先中的方法,这些方法已被当前类中的方法覆盖:在前面的示例中,parent#print 调用继承的方法,而self#print 会调用当前方法。

最后,当你定义一个类 x 时,你可以使用 #x 表示法来引用这个类的对象类型。这里的#Arakoon_client.client是指Arakoon模块中定义的client类的对象类型。

关于ocaml 类对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14125092/

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