0

我在比较 HASH_TABLE 中的两个对象时遇到问题

PERSON 是一个类,具有姓名、生日、关系状态、配偶姓名、配偶 ID 等属性。所以基本上由属性代码组成:

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”

我想我应该做“如果附加”以确保项目功能返回正确的对象类型然后分配?我不完全确定如何投射物体。

错误是通过调用上述功能触发的

我需要这些功能才能工作的原因是我可以更轻松地进行排序

4

1 回答 1

2

功能返回detachable G是因为可能没有找到任何元素。因此,您需要使用对象测试,例如

if
   attached model.list [id1] as p1 and then
   attached model.list [id2] as p2
then
   ... -- use p1 and p2
end
于 2016-02-08T05:39:01.670 回答