[英]Finding a object in a HASH_TABLE using item feature on EIFFEL
我在比較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”
我認為我應該做“如果已附加”以確保項功能返回正確的對象類型,然后進行分配? 我不確定如何投射對象。
通過調用上述功能觸發錯誤
我需要這些功能才能工作的原因是我可以更輕松地進行排序
這些特征返回detachable G
因為可能找不到元素。 因此,您需要使用對象測試,例如
if
attached model.list [id1] as p1 and then
attached model.list [id2] as p2
then
... -- use p1 and p2
end
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.