我想在Eiffel中编写一个强制转换方法,它将“要强制转换的类型”作为一个类型参数。有没有办法在Eiffel中将类型传递到方法中。
我能想到的唯一选择就是为转换创建一个新的类。类似于:
class
CAST [G, H]
feature
cast (in: LIST [G]): LIST [H]
do
-- cast code here
end有没有更好的方法在Eiffel中做到这一点。在C#中,我可以指定一个方法接受独立于类类型参数的类型参数。埃菲尔有类似的功能吗?
我使用的是EiffelStudio 6.6.8.3873gpl。
谢谢。
发布于 2011-08-23 02:03:38
不可能有泛型方法,其中返回类型由Eiffel中传递的参数确定。抱歉的。我遇到了同样的问题。您将返回一个公共超类,并使用赋值尝试获取对具有正确类型的返回对象的引用。
https://stackoverflow.com/questions/3464940
复制相似问题