Generics 集合中的功能调用中不兼容的实际参数使_与_分开
我不明白我错在哪里Generics 集合中的功能调用中不兼容的实际参数使_与_分开,generics,generic-list,eiffel,eiffel-scoop,Generics,Generic List,Eiffel,Eiffel Scoop,我不明白我错在哪里 class LINKED_LIST_SEP[G] inherit LINKED_LIST [G] create make, make_from_iterable, make_from_separate feature {NONE} -- Initialization make_from_separate (other: separate like Current) do defau
class
LINKED_LIST_SEP[G]
inherit
LINKED_LIST [G]
create
make,
make_from_iterable,
make_from_separate
feature {NONE} -- Initialization
make_from_separate (other: separate like Current)
do
default_create
across
other is l_item
loop
check
attached {G} {SCOOP_UTIL}.any_from_separate (l_item) as l_v
then
extend (l_v)
end
end
end
end -- class
对于不受约束的形式泛型参数,隐式约束可以任意分离。但是,功能从任何_分开期待任何分开 以下解决方案是可能的: 添加一个测试,确保在从\u单独调用任何\u之前,l\u项不是无效的。 将任何_的签名从_separate更改为接受可分离类型。然而,在这种情况下,其结果也将变得可分离。 在类链接列表的形式泛型参数中添加一个独立于ANY的约束。
很好,我错过了可拆卸的,我记得单独的部分。我看到的最具扩展性的是在添加附件之前对其进行测试。谢谢。作为对泛型1编译的一个提示,对于那些没有很好地学习理论的人来说,它会更加明确;