我在比较HASH_TABLE
中的两个对象时遇到问题PERSON是一个具有姓名,日期,关系状态,配偶姓名,配偶身份等属性的类。所以基本上由属性组成 代码:
list: HASH_TABLE[PERSON, INTEGER_64]
put(id1, id2: INTEGER_64)
local
p1, p2: PERSON
do
p1 := model.list.at(id)
-- or
p1 := model.list.search(id)
p1 := model.list.found_item -- same error as below
end
错误:分配来源与目标不兼容。
使用的功能返回“可分离的G”
我认为我应该做“如果附加”以确保项目功能返回正确的对象类型然后分配?我不确定如何施放物体。
通过调用上述功能
触发错误我需要这些功能才能工作的原因是我可以更轻松地排序
答案 0 :(得分:2)
功能返回detachable G
,因为可能找不到任何元素。因此,您需要使用对象测试,例如
if
attached model.list [id1] as p1 and then
attached model.list [id2] as p2
then
... -- use p1 and p2
end