扩展和/或参数对象作为属性



正如我现在从数组作为对象的理解,我必须使用参数对象,因为使用非参数Logtalk对象意味着我必须使用断言,即任何更改/设置重写整个数组。

问题是:

  • 如何扩展数组类
  • 或者将其实例化为主机类
  • 中的ATTRIBUTE

点1

:- object(a2d, instantiates(array)).
:- end_object.

  • Reference to unknown object: array
    

即使它工作,你如何在内部访问它。

卷帘窗

意味着以某种方式修改条款?

参数对象解决方案中,对象用于封装处理数组表示的谓词,而对象参数用于保存表示数组本身的(复合)项。

参数对象,在本例中是一个原型,可以像任何其他原型一样扩展

:- object(a2d(_Array_), extends(array(_Array_)).
:- end_object.

注意参数对象的标识符是array(_)(即复合项)。因此,array(_)array是不同对象的标识符。

最新更新