正如我现在从Array 作为对象所了解的那样,我必须使用参数对象,因为使用非参数 Logtalk 对象意味着我必须使用断言,即任何更改/设置都会重写整个数组。
那么问题是:
第 1 点
:- object(a2d, instantiates(array)).
:- end_object.
Reference to unknown object: array
即使它有效,你如何在内部访问它。
点2
意味着以某种方式修改术语?
在该参数对象解决方案中,对象用于封装对数组表示起作用的谓词,对象参数用于保存表示数组本身的(复合)项。
参数对象,在这种情况下是原型,可以扩展为任何其他原型:
:- object(a2d(_Array_), extends(array(_Array_)).
:- end_object.
注意参数对象的标识符是array(_)
(即复合词)。因此,array(_)
和array
是不同对象的标识符。
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句